У меня есть служба REST Python, и я хочу обслуживать ее с помощью HTTP2. Моя текущая настройка сервера - nginx -> Gunicorn
. Другими словами, nginx (порт 443 и 80, который перенаправляется на порт 443) работает как обратный прокси-сервер и отправляет запросы в Gunicorn (порт 8000, без SSL). nginx работает в режиме HTTP2, и я могу проверить, что с помощью chrome и проверки столбца «protocol» после отправки простого GET на сервер. Однако Gunicorn сообщает, что запросы, которые он получает, являются HTTP1.0. Кроме того, я coulnt't найти его в этом списке: https://github.com/http2/http2-spec/wiki/Implementations Итак, мои вопросы:Обслуживание Python (Flask) API REST через HTTP2
- Можно ли служить приложение Python (Flask) с http2? Если да, какие серверы поддерживают его?
- В моем случае (один обратный прокси-сервер и один обслуживающий фактический API), какой сервер должен поддерживать HTTP2?
Причина, по которой я хочу использовать HTTP2, заключается в том, что в некоторых случаях мне нужно выполнить тысячи запросов, и мне было интересно узнать, может ли функция мультиплексированных запросов HTTP2 ускорить процесс. С запросами HTTP1.0 и Python в качестве клиента каждый запрос занимает ~ 80 мс, что неприемлемо. Другим решением было бы просто загрузить/загрузить ресурсы REST и отправить несколько запросов с одним запросом. Да, эта идея звучит просто прекрасно, но мне действительно интересно узнать, может ли HTTP2 ускорить работу.
Наконец, я должен упомянуть, что для клиентской стороны я использую запросы Python с адаптером Hyper http2.