托管的Socket服务器组件

时间:2012-03-23 21:01:20

标签: .net performance sockets asynchronous

我们需要开发一种高度可销售的解决方案,可以处理8000个同步套接字连接(从销售点终端)和每天大约1M条消息。已经开发了处理消息的业务逻辑。

我们目前正在调查Async套接字的使用,并想知道是否有人已经实现了.NET异步套接字服务器,可以在很长一段时间内处理上述类似的负载?不只是POC,而是在现实生活环境中?

此外,是否存在可以处理这些要求的任何第三方服务器控件?我查看并找到了ServerFramework http://www.serverframework.com/和SocketWrench http://www.catalyst.com/products/socketwrench/,但想知道是否有人使用过这些组件(或其他组件)?

非常感谢你的帮助

1 个答案:

答案 0 :(得分:1)

8000同时连接真的不是那么多。在现代操作系统上,即使在商用硬件上,也可以打开数十万个空闲连接。

每天1M消息本身也不多。我可以在台式机上处理10-100k的TCP往返,因此您可以看到消息本身不会造成太大负担。这是导致负载的业务逻辑。

您肯定需要为此使用异步IO。 8000线程太多了。如果您实际使用异步IO并且对缓冲区有效,那么我根本不会预见到很多问题。