服务器软件开发系列--开篇
从毕业到现在一年的时间里,都在做通信方面的东西,因为通信往往涉及到高并发和大数据的处理,所以谁的代码只要有一丁点的问题,都会在服务器上显露无疑,所以并不能像很多的什么什么管理系统一样,效率差点没关系,反正也是企业内部使用。
前事链接
说到服务器这方面的,因为园子里面讨论的人也不多或者我关注的不够,所以在此链接以前的一些与服务器通信方面的讨论:
① 经过一年时间的沉淀 再次回首 TCP Socket服务器编程
这里有一些讨论,大家可以去看一下
这里有比较重要的IOCP与线程池相关的一些知识,大家都可以用看一下
这里说明一下链接这些的原因,服务器的编程,或者说通信模块的套路也只有那么几种,对于采用TCP而言,为了取得好的性能,我个人感觉有以下只有以下几个点要处理,只要把这几个点处理好了,服务器的编程就没什么了(这里的观点欢迎讨论):
1, 内存池(对C++而言)
2, 使用IOCP的Socket IO模型(对.net而言,还不知道.net下的iocp怎么用)
3, 线程池(这里说的线程池其实用iocp已经解决了,提一下)
4, Socket连接池
5, 其它的一些策略问题,比如UDP模拟TCP的重发机制,防DDOS攻击,还有经常遇到的一些聚焦在 链接① 中的讨论的客户端瞬间改送大量数据的问题,这里我没有多少经验,欢迎讨论。
作者:OUZI(connoryan)
出处:http://www.cnblogs.com/ouzi/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。