У меня есть приложение RESTful, развернутое на нескольких экземплярах EC2, сидящих за балансировщиком нагрузки.
Аутентификация частично обрабатывается пользовательским заголовком запроса, который называется «X-App-Key».
Я только что перенес свои классические балансировщики нагрузки на балансировщики нагрузки приложений, и у меня начинаются периодические проблемы, когда некоторые действительные запросы (через тестирование с CURL) не проходят проверку подлинности для некоторых пользователей. Похоже, что пользовательский заголовок запроса только периодически проходит. При использовании apache bench не удалось выполнить около 100 из 500 запросов.
Если я тестирую с классическим балансировщиком нагрузки, все 500 успешно.
Я посмотрел на это немного подробнее и обнаружил, что пользователи, для которых это не удается, используют немного более новую версию CURL, и, в частности, запросы от этих пользователей используют HTTP2. Если я добавлю «--http1.1» к запросу CURL, все они пройдут нормально.
Таким образом, проблемы, как представляется, характерны для нас при использовании настраиваемого заголовка запроса с балансировщиками нагрузки приложений нового поколения и HTTP2.
Я что-то не так делаю?