Наблюдения
При использовании Amazon ELB Application Load Balancer и работе с Sticky Sessions балансировщик нагрузки вставляет файл cookie с именем AWSALB
в первый запрос. Чтобы следующий запрос оставался на том же целевом узле (экземпляре EC2), в этот запрос должен быть включен файл cookie. При этом кажется, что балансировщик нагрузки вставляет другое значение cookie в ответ на второй запрос. При включении этого нового значения cookie в третий запрос мы получаем еще новое значение cookie в ответе. И так далее…
(Это отличается от того, как закрепленные сеансы работают с классической загрузкой Балансировщик, в котором файл cookie имеет имя AWSELB
и сохраняет свое значение до тех пор, пока не будет отклонен клиентом или балансировщиком нагрузки.)
Причина, по которой файл cookie AWSALB
постоянно меняет значение (как указано в docs):
Имя файла cookie - AWSALB. Содержимое этих файлов cookie зашифровывается с помощью ключа ротации. Вы не можете расшифровать или изменить файлы cookie, созданные балансировщиком нагрузки.
Таким образом, даже если содержимое файла cookie может быть таким же, мы не можем сказать.
Вопрос
Вопрос в том, должен ли запрос к балансировщику нагрузки всегда включать последнее полученное значение AWSALB
cookie или можно ли отправить какое-то ранее полученное значение (конечно, из того же прикрепленного сеанса).
Если это требование, балансировщик нагрузки приложений AWS ELB не сможет обслуживать клиента, который выполняет несколько параллельных запросов (после получения первого AWSALB
cookie), а только клиентов, которые выполняют все запросы последовательно (по одному). .
Кто-нибудь может пролить свет на это?