Http 在internet上,当服务器处于最大容量时,请求会发生什么情况

Http 在internet上,当服务器处于最大容量时,请求会发生什么情况,http,tcp,webserver,client-server,Http,Tcp,Webserver,Client Server,在internet的典型视图中,您有一个发出HTTP请求的客户端。这会命中处理请求并将响应返回给客户端的服务器。但是,如果多个客户端同时向同一服务器发出相同的HTTP请求,我对会发生什么感到困惑 我认为一个典型的服务器可以同时处理多个请求,所以如果数量小于这个数量,那么就没有问题了。如果是更多,那么到底发生了什么?在线搜索我找不到答案,但我认为这是以下情况之一,但可能我完全错了: 1) 如果服务器已经满负荷运行,那么发出请求就不会得到响应 2) 在某个地方有一个队列,在服务器准备好处理请求之前,

在internet的典型视图中,您有一个发出HTTP请求的客户端。这会命中处理请求并将响应返回给客户端的服务器。但是,如果多个客户端同时向同一服务器发出相同的HTTP请求,我对会发生什么感到困惑

我认为一个典型的服务器可以同时处理多个请求,所以如果数量小于这个数量,那么就没有问题了。如果是更多,那么到底发生了什么?在线搜索我找不到答案,但我认为这是以下情况之一,但可能我完全错了:

1) 如果服务器已经满负荷运行,那么发出请求就不会得到响应

2) 在某个地方有一个队列,在服务器准备好处理请求之前,它会一直保持空闲请求。此队列将位于服务器本身或其他位置


3) 这是由TCP协议处理的吗?如果由于服务器工作过度而无法立即建立连接,则会在一个时间限制后重试

如果HTTP服务器已满负荷,则TCP连接将无法连接,或者连接成功(可能它已经建立(从早期的HTTP保持活动)然后,服务器可以简单地决定请求失败,错误代码为
503 Service Unavailable
或类似。或者,服务器可能根本不响应,客户端可以决定是否等待或超时。TCP没有HTTP的概念,因此这严格地由服务器和客户端在各自端处理。在这两种情况是:1)如果TCP连接失败,它是否会自动尝试建立新连接,或者客户端是否负责重新发送请求。2) 与其发送503服务不可用,还有什么原因不能使其保持不可用?请将这些请求添加到队列中以便稍后处理?“如果TCP连接失败,它是否会自动尝试建立新连接,或者客户端是否负责重新发送请求”-这是客户端的责任,TCP永远不会自动重试连接,它只会失败。“与其发送503服务不可用,是否有任何原因使其无法继续将这些请求添加到队列中以便稍后处理?”-这完全由服务器决定。但是,如果客户机等待响应的时间太长,它可能会放弃等待,关闭连接,然后继续。