当前位置: 首页 > 知识库问答 >
问题:

HTTP/2对于反向代理服务器意味着什么?

穆飞星
2023-03-14

HTTP/2如何影响代理服务器的实现?特别是,例如,当客户端向仅支持HTTP/1的内容服务器发送HTTP/2请求时。x、 代理服务器是否应该将HTTP/2请求转换为HTTP/1。是否在将客户端请求定向到content server之前执行x请求?当从content server接收到响应时,代理服务器是否应该在将响应发送回客户端之前将其转换为HTTP/2格式?

共有2个答案

池兴邦
2023-03-14

是的,正如你所说。从HTTP/2到HTTP/1.1的转换必须在一个方向上进行,从HTTP/1.1到HTTP/2的转换必须在另一个方向上进行。

在实践中,这意味着尽管HTTP/2协议不需要传统的基于文本的解析器,但全面的HTTP/2服务器需要HTTP/1.1解析器,不仅可以与仅为HTTP/1.1的客户端(其中包括爬虫)一起工作,还可以与内部应用程序交谈。

就使用而言,最重要的应用协议之一是FastCGI。FastCGI还需要解析来自应用程序的HTTP/1.1响应,并将其转换为客户端的HTTP/2响应。

柳昊焱
2023-03-14

正如dsign所讨论的,你的理解是正确的。

然而,我认为值得指出的是,HTTP/2在您的边缘连接(即反向代理)上仍然有巨大的优势,因为HTTP/2解决的问题(主要是延迟)在从反向代理到内容服务器的通常较短、通常较高带宽的跳程中不太重要。

例如,如果对边缘的反向代理有100毫秒的延迟,而反向代理和content server之间只有1毫秒的延迟,那么content server向代理服务器传输HTTP/1.1的事实可能不会对性能产生太大影响,因为它有超快的1毫秒延迟。因此,终端客户端(对反向代理说HTTP/2)仍然可以看到HTTP/1.1带来的巨大性能优势。

 类似资料:
  • 我已经读了很多关于HTTP 2(仍在开发中)的东西,所以我也听说了服务器推送功能,但我想,这还不清楚。 此服务器推送功能是否意味着服务器将能够向客户端发送响应,而无需后者发出请求?就像普通的TCP连接一样?还是我没抓住重点?

  • 问题内容: 我正在玩列表理解,并且在另一个站点上遇到了这个小片段: 我花了几分钟尝试复制功能(通过键入),然后才意识到它被破坏了。 用这些字符括起来的语句有什么作用?从我所看到的相当于str(num)。但是当我计时的时候: 它需要4.09秒,而: 需要2.43秒。 两者都给出相同的结果,但是要慢得多。这里发生了什么? 编辑: 奇怪的是…给出的结果比稍慢。2.99秒和2.43秒。使用Python 2

  • 有人能解释一下与HTTP/2相关的多路复用以及它是如何工作的吗?

  • 来自请求率和性能指南-Amazon Simple Storage Service: Amazon S3会自动扩展到高请求率。例如,您的应用程序可以在存储桶中的每个前缀每秒至少实现3,500个PUT/POST/DELETE和5,500个GET请求。存储桶中的前缀数量没有限制。以指数方式提高您的读取或写入性能很简单。例如,如果您在Amazon S3存储桶中创建10个前缀以并行化读取,您可以将读取性能扩

  • 我希望使用Apache HTTP服务器作为OpenShift或Kubernetes中托管的一组微服务的反向代理。我想在Kubernetes路线上使用TLS passthrough。也就是说,需要在Apache(出站)创建TLS连接,并在POD终止。为了实现这一点,OpenShift需要在不解密有效负载的情况下识别目标主机,以便将每个请求转发给正确的微服务。TLS中的服务器名称指示(SNI)将具有主

  • 我想创建一个