Windows Server 2008上的最大tcp / ip连接

我有通过TCP协议监听单个端口的.Net服务。 客户端连接并传输数据一段时间(从几分钟到几个小时)。

Windows 2008服务器上的连接数是否有限制? 我没有打,因为现在有多达50个用户。 计划是有成千上万的用户,所以我想知道未来是否会有问题。

编辑:
云解答时,似乎Windows Server 2008的某些版本有一些限制。是否有这些限制的参考? 我试过谷歌,但它返回的文章限制了半边界TCP连接。

成千上万的用户?

过去,我在Windows 2003 server上运行了一些TCP / IP客户机/服务器连接测试,并在合理的低规格虚拟机上管理了超过70,000个连接。 (详情请参阅: http : //www.lenholgate.com/blog/2005/10/the-64000-connection-question.html )。 如果Windows 2008服务器限于2003 server以下,恕我直言,我感到非常惊讶,恕我直言,云链接的帖子太模糊,无法使用。 这样的问题出现了很多,我博客为什么我不认为这是你应该真正担心在这里: http : //www.serverframework.com/asynchronousousevents/2010/12/one-million- tcp-connections.html 。

我个人会测试它,看看。 即使您打算使用的Windows 2008 server版本没有固有的限制,仍然会有基于内存,处理器速度和服务器设计的实际限制。

如果你想运行一些“通用”测试,你可以使用我的多客户端连接测试和相关的回显服务器。 这里详细说明: http : //www.lenholgate.com/blog/2005/11/windows-tcpip-server-performance.html和在这里: http : //www.lenholgate.com/blog/2005/11/simple-echo -servers.html 。 这些是我用来为我的服务器框架运行我自己的测试,并且这些允许我在具有760MB内存的Windows 2003 server VM上创建70,000个活动连接。

修改以添加下面评论中的详细信息…

如果你已经想到了多台服务器,我会采取以下的方法。

  1. 使用我链接的免费工具,向自己证明您可以在目标操作系统上创建合理数量的连接(注意动态端口上的Windows限制,这可能会导致您的客户端连接失败,搜索MAX_USER_PORT )。

  2. 在开发过程中定期测试您的实际服务器与测试客户端,可以创建连接,并在服务器上实际“做一些事情”。 这将有助于防止以限制其可伸缩性的方式构建服务器。 看到这里: http : //www.serverframework.com/asynchronousousevents/2010/10/how-to-support-10000-or-more-concurrent-tcp-connections-part-2-perf-tests-from-day-0 html的

半开连接的数量有限制,但不适用于活动连接。 尽管看起来取决于Windows 2008服务器的类型,但至少根据这位MSFT员工的说法:

它取决于版本,Web和Foundation版本有标准,企业和数据中心的连接限制。