我有一个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适配器。