【问题标题】:How many clients can servers handle at a time?服务器一次可以处理多少个客户端?
【发布时间】:2011-02-20 07:33:40
【问题描述】:

我想答案很大程度上取决于客户端将进行什么样的活动,但假设我想创建一个客户端/服务器架构,它只涉及连接和断开连接。

也就是说,打开一个 TCP 连接并保持它例如三个小时。

对于一次可以有多少个可能的连接,是否有硬性限制(由操作系统或协议等设置)?

另外,这会对服务器产生什么开销?如果 10000 个客户端使用 TCP 连接并保持该连接(假设 TCP 具有自己的 keepalive 功能)3 小时,服务器是否必须处理除了 keepalive、连接和断开操作之外的任何内容?

【问题讨论】:

    标签: architecture tcp network-programming


    【解决方案1】:

    我在这里写了一篇博客:http://www.serverframework.com/asynchronousevents/2010/12/one-million-tcp-connections.html

    在 Windows 上,有一些资源限制可能会给您带来问题,但 10,000 个连接很容易。事实上,我在一个相当低规格的 VM 上运行了超过 70,000 个连接,请参阅此处http://www.lenholgate.com/blog/2005/11/windows-tcpip-server-performance.html 了解详细信息。

    这很可能是您在代码中所做的限制了您可以处理的连接数量,现代操作系统将很容易处理比您在代码中所能处理的更多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-24
      • 2017-04-08
      • 2017-04-30
      • 1970-01-01
      • 2012-05-10
      • 1970-01-01
      相关资源
      最近更新 更多