一台服务器最大能支持多少条 TCP 连接

💡 原文中文,约5600字,阅读约需14分钟。
📝

内容提要

本文讨论了Linux服务器的最大文件打开数限制和一台服务器最大能支持的连接数。调整参数可以增大服务器能打开的最大文件数。一台4GB内存的服务器大约可以支持100万个TCP连接。客户端机器最多能发起的连接数取决于可用端口范围,一台机器最多可以建立65535个连接。讨论了全连接队列长度、端口被占用问题等。给出了做一个长连接推送产品,支持1亿用户所需的服务器数量评估。

Q&A

一台4GB内存的服务器最多能支持多少条TCP连接?

一台4GB内存的服务器理论上可以支持约100万个TCP连接。

客户端机器最多能发起多少条连接?

客户端机器最多可以发起65535个连接,受可用端口范围限制。

如何解决'打开文件过多'的错误?

可以通过调整fs.file-max、soft nofile和fs.nr_open参数来解决该错误。

如何通过多个IP突破65535连接限制?

通过为客户端配置多个IP或连接不同的服务端,可以突破65535连接限制。

长连接推送产品支持1亿用户需要多少台服务器?

大约需要20台服务器来支持1亿用户的长连接推送。

修改Linux服务器的最大文件打开数需要注意什么?

需要确保hard nofile大于soft nofile,并且fs.nr_open需大于hard nofile。

🏷️

标签

➡️

继续阅读