保持活页头的说明

我被要求build立一个网站,其中一个合作开发者告诉我,我需要包括keep-alive头文件。

那么我读了很多,但我仍然有疑问。

msdn – >

当客户端对网页内容发出多个请求时,打开的连接可以提高性能,因为服务器可以更快地返回每个请求的内容。 否则,服务器必须为每个请求打开一个新的连接

看着

在这里输入图像说明

  • 当IIS(F)发送keep alive标题( 或用户发送保持活动 ),是否意味着( ECB )保存仅用于我的会话的连接?
  • 这个信息在哪里保存( “这个连接属于”Royi“ )?
  • 这是否意味着没有其他人可以使用该连接
  • 如果是这样 – 这是否意味着保持活着的标题 – 减less重叠连接用户的数量?
  • 如果是的话,这个连接能保存多久? (换句话说,如果我保持活着 – “保持”直到什么时候?)

ps对于那些有兴趣的人:

单击此示例页面将返回保持活动标题

信息保存在哪里(“这个连接在计算机A和服务器F ”)?

TCP连接由源IP和端口以及目标IP和端口识别。 您的操作系统,所有中间会话感知设备和服务器的操作系统将通过此识别连接。

HTTP与请求响应一起工作:客户端连接到服务器,执行请求并获得响应。 如果没有保持活动状态,则在每个响应之后closures与HTTP服务器的连接。 使用HTTP保持活动状态,可以保持底层TCP连接处于打开状态,直到满足某些条件。

这允许通过单个TCP连接发送多个请求 – 响应对,从而消除了一些TCP相对较慢的连接启动。

当IIS(F)发送保持活动头(或用户发送保持活动),是否意味着(E,C,B)保存连接

路由器不需要记住会话。 实际上,属于同一个TCP会话的多个TCP数据包不需要全部通过相同的路由器 – 这是TCPpipe理的。 路由器只需select最佳的IPpath并转发数据包。 保持活动仅适用于客户端,服务器和任何其他中间会话感知设备。

这只是我的会议?

这是否意味着没有其他人可以使用该连接

这就是TCP连接的意图 :这是一个仅供双方使用的端到端连接。

如果是这样 – 这是否意味着保持活着的标题 – 减less重叠连接用户的数量?

定义“重叠连接”。 请参阅HTTP持久连接的一些优缺点,例如:

  • 较低的CPU和内存使用量(因为较less的连接同时打开)。
  • 启用请求和响应的HTTPstream水线。
  • 减lessnetworking拥塞(更less的TCP连接)。
  • 减less后续请求的延迟(无握手)。

如果是的话,这个连接能保存多久? (换句话说,如果我保持活着 – “保持”直到什么时候?)

典型的保持活动响应如下所示:

 Keep-Alive: timeout=15, max=100 

例如,请参阅超文本传输​​协议(HTTP)Keep-Alive Header (HTTP / 2的草稿,其中保持活动标头比2616和2086更详细地解释):

  • 主机将timeout参数的值设置为主机允许空闲连接在closures之前保持打开状态的时间。 如果主机没有发送或接收数据,则连接处于空闲状态。

  • max参数表示客户端将请求的最大请求数,或者服务器将允许在持久连接上进行的请求数。 一旦发送了指定数量的请求和响应,包含该参数的主机就可以closures连接。

但是,服务器可以在任意时间或任意数量的请求之后自由地closures连接(只要它返回对当前请求的响应即可)。 这是如何实现取决于你的HTTP服务器。

Interesting Posts