编程语言
首页 > 编程语言> > javascript – http请求期间的连接超时是什么

javascript – http请求期间的连接超时是什么

作者:互联网

我找到了关于“连接超时”的两个解释:

>当客户端不发送时,服务器关闭套接字连接
在[timeout] seconds期间服务器的任何字节.它与HTTP头有一些关系(Connection:keep-alive).
>如果套接字连接无法建立,客户端会在[timeout]秒后停止连接服务器.

所以我对这个定义很困惑.什么是连接超时?它是客户端和服务器端之间的区别吗?

TimeToLive,连接超时和请求超时之间有什么区别?

解决方法:

我将尝试更加非正式地回答它.

连接超时 – 是必须在其中建立客户端和服务器之间的连接的时间段.假设您将浏览器(客户端)导航到某个网站(服务器).会发生什么情况是您的浏览器开始侦听来自该服务器的响应消息,但由于各种原因(例如服务器处于脱机状态),此响应可能永远不会到达.因此,如果在X秒后仍然没有来自服务器的响应,那么您的浏览器将“放弃”等待,否则它可能会等待永恒.

请求超时 – 如前一种情况,客户端不愿意等待服务器响应太长时间,服务器也不愿意将未使用的连接保持活动太长时间.一旦建立了服务器和客户端之间的连接,客户端必须通过向该服务器发送信息来定期通知服务器它仍然存在.如果客户端未能在指定时间内向服务器发送任何信息,则服务器只会丢弃此连接,因为它认为客户端不再与之通信(为什么浪费资源无意义).

生存时间(TTL) – 是在数据包内部指定的值,该数据包在创建数据包时设置(通常为255),该数据包表示数据包可以在网络中保留多长时间.当该数据包通过网络时,它到达位于数据包的起源和目的地之间的路径上的路由器.每次路由器重新发送数据包时,它也会将其TTL值减1,如果该值下降到0,则路由器只是丢弃它,而不是重新发送数据包,因为数据包不再存在.这种机制用于防止网络被数据泛滥,因为每个数据包只能在有限的“时间”内生存.

标签:javascript,http,timeout,connection-timeout
来源: https://codeday.me/bug/20190828/1747796.html