求高性能网络服务程序!

FengSC 2005-07-29 03:48:41
最近写了一个服务程序,使用阻塞方式,开始时工作比较稳定,后来业务多了,常出现好几百个同时连接,服务程序常常崩溃。现在想写一个新的非阻塞的事件驱动方式的服务程序,请大家给点方案和注意事项,要是有参考代码就更加感谢了。
...全文
192 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
FengSC 2005-08-01
  • 打赏
  • 举报
回复
请提供重叠IO、完成端口、IPCP等的概念,以及各自的好处
qrlvls 2005-07-30
  • 打赏
  • 举报
回复
单就服务器性能而言,用linux确实会要好一些,至少在同等工作量的情况下会好一些
用 Windows 的话可以使用重叠IO + 完成端口,通过多服务器负载均衡也可以实现大量连接
ExtUSA 2005-07-30
  • 打赏
  • 举报
回复
服务程序常常崩溃这个问题就是提醒你注意程序的稳定性、强壮性而不只是IOCP的网络部分做得不好。

并发量现在已经有成熟的IOCP等解决方法了。现在考验的是程序内在的品质问题了-还是老办法,靠经验丰富的人来加强系统。
ExtUSA 2005-07-30
  • 打赏
  • 举报
回复
不管你在什么平台下做win32或者linux最需要考虑的是设计良好的系统架构,所以请个有经验的架构师才是系统成功的关键。

win32平台已经是经过网络游戏市场考验的成熟商业平台。linux则在棋牌类游戏近来有些应用。
lianglp 2005-07-30
  • 打赏
  • 举报
回复
to: alec626(月吻长河)
为什么这样说呢?在windows下也不是差很多吧。
就建立服务器性能来说,你有那些数据说明linux下服务器肯定比windows下好呢,
本人觉得关键还是看个人或架构人员水平问题吧。
oyljerry 2005-07-30
  • 打赏
  • 举报
回复
采用高效率服务模型IOCP好了
菲斯可儿 2005-07-30
  • 打赏
  • 举报
回复
试试IOCP吧,应该可以。
ExtUSA 2005-07-30
  • 打赏
  • 举报
回复
建议考虑如下几条:

1、不合理的整体架构;
2、不合理使用线程;
3、诸多原因导致内存泄露;
4、硬件如CPU太少等。
月吻长河 2005-07-29
  • 打赏
  • 举报
回复
并发服务器就不要在Win32下搞了。
选择Linux或者Unix,
用ACE来开发
zhangshengyu 2005-07-29
  • 打赏
  • 举报
回复
SDK 里就有一个很好的完成端口模型。
AntonlioX 2005-07-29
  • 打赏
  • 举报
回复
http://www.vckbase.com/code/downcode.asp?id=2619
IOCP完成端口模型示例代码

18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧