首页 > 解决方案 > 使用 HTTP/2 和后端服务 HTTP/1.1 的反向代理的性能

问题描述

我当前的设置是使用 NGINX (1.19) 作为反向代理来处理 TLS 终止并支持 HTTP/2。该服务器通过纯 HTTP 连接到内部网络中的后端服务。

为了连接上游服务器,NGINX 仅使用 HTTP/1.0 或 HTTP/1.1(proxy_http_version指令),因为 HTTP/2 仅适用于安全连接。

我试图了解此设置是否会增加开销。因为,如果我理解正确,如果客户端使用单个 TCP 连接连接到代理,并通过 N 个流发送请求,则反向代理将不得不建立 N 个新的 TCP 连接到上游。

我尝试使用此设置运行一些测试,但没有发现很大的差异。

如果后端服务只使用 HTTP/1.1,那么在代理中启用 HTTP/1.1 而不是 HTTP/2 会更好吗?

标签: httpnginxreverse-proxyhttp2nginx-reverse-proxy

解决方案


推荐阅读