socket listen参数中的backlog 的意义!

时间:2022-09-06 19:04:16
socket listen参数中的backlog 的意义!
服务器监听时,在每次处理一个客户端的连接时是需要一定时间的,这个时间非常的短(也许只有1ms 或者还不到),但这个时间还是存在的。而这个backlog 存在的意义就是:在这段时间里面除了第一个连接请求是正在进行处理以外,其他的连接请求都在请求队列中等待,而如果超过了队列的最大等待个数时,其他的请求将被忽略或者将不会被处理。
这个backlog 的值就是影响这个队列的大小的。但是这个backlog 值的大小并非直接等于队列的个数,队列的实际大小根据操作系统的不同而不同。也许有的是这个值,有的是2 * backlog + 1 ,或者其他公式等等。
个人理解,仅供参考!