日期:2014-05-19  浏览次数:20793 次

如何实现多线程并发服务器设计。
准备用通过remoting或socket进行链接服务器程序,没有设计过,不知道并发如何处理,那位大侠指点一下,谢谢。

------解决方案--------------------
连接池管理连接
------解决方案--------------------
...最简单的用IIS +XML SERVER 看看好用不。
------解决方案--------------------
Socket的BeginXxx方法全部都是用完成端口去实现的.
完成端口的细节你可以不需要考虑

只要你尽量使用Socket.BeginXxx来编写Socket程序,就能让你的服务器程序达到最大的网络处理量.

不过说起来,DotNet的Socket编程真的很费内存.

------解决方案--------------------
上下文并发处理,lz想写com+吧。弄多线程很容易啊
------解决方案--------------------
window下建议使用iocp,自己查下资料。
------解决方案--------------------
http://blog.csdn.net/zhiang75/archive/2004/08/16/75915.aspx

做个转贴工

------解决方案--------------------
如果LZ准备用Remoting, 就可以省去许多Socket的底层操作,但也有它的局限,比如用Remoting传输一个很大的数据效率会差一点儿.

用Remoting的时候需要根据业务需求,决定才用哪种方式: 是传简单的的ByValue的Object 还是传 MarshalByRefObject; 是用SingleCall还是Singleton; 如果后者用CAO Singleton还是SAO Singleton. 还有就是哪种Channel 和 Formatter, 其中 Tcp Channel + Binery Format是最快的.

此外在Remoting里,看你如何用,还有不少细活儿,比如Life Time的管理,事件回调等等.