基于TCP / IP的服务器(C#)的建议

时间:2014-01-12 11:22:22

标签: c# multithreading sockets tcp socketasynceventargs

我正在寻找有关基于TCP / IP的服务器的最佳方法的一些建议。我已经在这里和其他网站上做了很多工作,并且无法帮助我认为我所看到的是为了我需要的目的而过度杀伤。

我之前已经在每个连接的线程上写了一个,我现在知道它不会很好地扩展,但我想的是相反,每个连接创建一个新线程我可以使用ThreadPool并将传入的连接排队等待处理这不是一个大问题(如果他们将在不到一两分钟的时间内处理)。

服务器本身将主要用于从设备获取数据,并且仅偶尔必须向发送设备发送响应以更新设置(同样不是真正时间关键,因为设备设置为保持连接,只要它们可以,如果由于某种原因,如果它断开连接,响应将能够等到下一次发送消息)。

我想知道的是,这种扩展比每个连接的线程场景更好(我假设它将由于线程重用)以及这种设置支持的大致数量的设备。

此外,如果认为不合适,可能有人可能提供SocketAsyncEventArgs方法的链接或说明。我已经完成了很多关于这个主题的阅读和看过的例子,但是我不能完全了解事件的顺序等等,以及为什么某些方法在当时被调用。

感谢您的帮助。

我已阅读过评论,但有人可以详细说明吗? 虽然说实话,我宁愿采用自己的初始方法。

0 个答案:

没有答案