Назад | Перейти на главную страницу

Повторяющиеся запросы балансировщика нагрузки приложений AWS

Кто-нибудь сталкивался с повторяющимися запросами, отправленными в несколько экземпляров EC2 с использованием балансировщика нагрузки приложений?

У нас есть API на EC2 под управлением ALB, и недавно мы заметили, что некоторые запросы отправляются в несколько экземпляров и вызывают проблемы, поскольку определенные действия, такие как платежи, происходят более одного раза.

API построен на ядре .NET, но не думаю, что это важно. Проблема возникла недавно, и случается не все время.

Кто-нибудь видел что-то подобное. Я видел некоторые старые проблемы примерно с 2011/2012 года, но ничего более свежего.

включить Журналы доступа ALB (они доставляются в S3) и анализируют их.

Скорее всего, вы не обнаружите, что на самом деле ваши клиенты отправляют запрос несколько раз - либо через взаимодействие с пользователем (например, пользователь перезагружает страницу, ожидая обработки платежа), либо из-за вашего клиентского приложения (время ожидания JS истекает, ожидая ответ и повторно отправляет запрос). Журналы вам скажут.

Надеюсь, это поможет :)

Мы также наблюдали то же самое с классическим ELB (в отличие от вашего ALB). У нас есть доказательства того, что иногда (дюжину раз в день в условиях интенсивного трафика) два экземпляра получают один и тот же запрос, и только один из этих экземпляров находится в журнале доступа ELB.

Кроме того, судя по нашим журналам, это происходило как минимум 3 месяца (а, возможно, и навсегда), но с середины июля могло стать еще хуже.