我有一個Python REST服務,我想使用HTTP2提供服務。我目前的服務器設置是nginx -> Gunicorn
。換句話說,nginx(重定向到端口443的端口443和80)作爲反向代理運行,並將請求轉發給Gunicorn(端口8000,無SSL)。 nginx運行在HTTP2模式下,我可以通過使用chrome並在向服務器發送一個簡單GET之後檢查「協議」列來驗證。但是,Gunicorn報告說它收到的請求是HTTP1.0。另外,我coulnt't發現它在這個名單: https://github.com/http2/http2-spec/wiki/Implementations 所以,我的問題是:通過HTTP2提供Python(Flask)REST API
- 是否有可能成爲與HTTP2一個Python(瓶)應用程序?如果是,哪些服務器支持它?
- 在我的情況下(一個反向代理服務器和一個服務實際的API),哪個服務器必須支持HTTP2?
我想使用HTTP2的原因是因爲在某些情況下,我需要一起執行數千個請求,而且我很想看看HTTP2的多路複用請求功能是否可以加快速度。以HTTP1.0和Python請求作爲客戶端,每個請求需要約80ms,這是不可接受的。另一種解決方案是批量/批量處理REST資源,並使用單個請求發送多個請求。是的,這個想法聽起來不錯,但我真的很感興趣,看看HTTP2是否可以加快速度。
最後,我應該提到,對於客戶端,我使用Python http請求和Hyper http2適配器。