Http / 2中的连接将保持多长时间

时间:2018-12-16 15:44:26

标签: http networking https keep-alive ttl

该连接将在Http / 2中保留多长时间? 我知道Http / 2在每个域中使用一个连接并进行多路复用。但是我没有任何关于连接保持多长时间的信息。

1 个答案:

答案 0 :(得分:1)

与HTTP / 1.1一样,在HTTP / 2中保持连接存活的时间取决于客户端和服务器的实现。 HTTP/2 specification

  

HTTP / 2连接是持久的。为了获得最佳性能,期望客户端在确定没有必要与服务器进行进一步通信之前(例如,当用户离开特定网页时)或直到服务器关闭连接之前,不会关闭连接。

     

[...]

     

鼓励服务器保持打开连接的时间尽可能长,但是允许服务器在必要时终止空闲连接。当任一端点选择关闭传输层TCP连接时,终止端点应首先发送一个GOAWAY(第6.8节)帧,以便两个端点都能可靠地确定先前发送的帧是否已被处理,并能正常完成或终止任何必要的剩余任务。

因此,两个端点都可以通过发送GOAWAY帧来正常关闭连接。 NginxApache使您可以配置超时,然后关闭空闲的HTTP / 2连接。 nginx的默认值为3分钟,而Apache的默认值为5秒。