Вот базовая архитектура, которую я в настоящее время использую для предоставления доступа к веб-приложению (AngularJS на внешнем интерфейсе - JEE-JAX-RS для внутреннего REST API):
Клиент -> Apache -> Сервер приложений (контейнер Java — например, tomcat)
Браузер клиента подключается к приложению через HTTPS (обрабатывается Apache), а Apache перенаправляет соединение в контейнер Java (я использую Oracle Weblogic). Все работает нормально. Но теперь я хотел бы использовать HTTP/2.
Судя по всему, HTTP/2 будет доступен только в JEE8 (Servlet v4), что означает, что он не будет доступен в таких решениях, как Weblogic, в ближайшее время.
Собственно у меня два вопроса:
- Могу ли я просто активировать Apache mod_http2 и настроить свой интерфейс (AngularJS) для связи в HTTP/2, или также необходимо, чтобы мой сервер приложений мог обрабатывать HTTP/2?
- Если Apache получает соединение в HTTP/2 и перенаправляет его в контейнер Java через HTTP/1.1 или AJP, буду ли я по-прежнему пользоваться всеми преимуществами HTTP/2, даже если часть соединения не в HTTP/2?