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

Завершить HTTP / 2 на AWS ALB

ALB в AWS Application Load Balancer поддерживают HTTP / 2, и можно подумать, что мы можем переключиться на них и сразу же воспользоваться преимуществами HTTP / 2.

Есть ли какой-либо способ завершить работу HTTP / 2 на ALB, чтобы веб-серверы не нуждались в настройке для поддержки HTTP / 2?

Есть ли какой-либо способ завершить работу HTTP / 2 в приложении AWS Application ELB, чтобы веб-серверы не нуждались в настройке для поддержки HTTP / 2?

Им уже не нужно быть.

В Application Load Balancer (ELB / 2.0) это работает из коробки. ALB обращается к экземплярам, ​​используя HTTP / 1.1, одновременно передавая HTTP / 2 браузеру, если браузер поддерживает его, в противном случае - HTTP / 1.x.

Вы можете использовать HTTP / 2 со слушателями HTTPS. Вы можете отправлять до 128 запросов параллельно, используя одно соединение HTTP / 2. Балансировщик нагрузки преобразует их в отдельные запросы HTTP / 1.1. и распределяет их по здоровым целям в целевой группе, используя алгоритм циклической маршрутизации. (курсив мой)

http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html

ELB не поддерживает HTTP2, ALB поддерживает, и то же самое. CloudFront. Вы можете перевести ELB в режим TCP и поддерживать HTTP2 с помощью своего веб-сервера, но это снимает защиту, которую вы получаете от ELB (он снова защищает вас от множества атак, DDOS, SYN Flood и т. Д.).

Если вам нужен HTTP / 2, ваши варианты в том порядке, который я считаю оптимальным, следующие:

  • Используйте CloudFront (ограничьте местоположения, если хотите снизить расходы)
  • Используйте ALB
  • Используйте ELB в режиме TCP с HTTP2 на вашем веб-сервере