gpt4 book ai didi

linux - 在 Linux 中处理 c10k

转载 作者:太空宇宙 更新时间:2023-11-04 09:48:37 26 4
gpt4 key购买 nike

使用linux BSD socket,如果事件连接数多了会怎样超出系统限制?会接受调用返回错误吗?

即使系统可以接受不确定的套接字连接,是否可以大于整数最大值的大小?

套接字描述符是一个 4 字节的整数值。理论上不可能维持超过4294967295 在 32 位系统中与单个进程的事件 TCP 连接?(假设硬件和操作系统可以支持这一点。服务质量无关紧要。我们只是想保持活跃的 TCP 连接)

这可能是个愚蠢的问题,但我很好奇。

最佳答案

由于文件描述符是整数,因此您显然不能超过 4G 文件描述符。即使在 64 位系统上也是如此,因为 sizeof(int) 仍然是 4。理论上,您可以跨多个进程打开更多文件描述符。即使您增加了所有/proc 限制,您也可能首先耗尽内核内存。

Linux 内核中的每个套接字分配在千字节范围内,因此即使在大型服务器(具有许多 GB 的内存)上,最大连接数也以百万计,而不是数十亿。

关于linux - 在 Linux 中处理 c10k,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13585380/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com