怎样用Socket构建提供大规模并发访问的服务器 本帖最后由 mni2005 于 2010-05-20 21:54:15 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 那你在详细点,谢谢了!我看到网上大都说Iocp模型,可以高并发,但是那个好像利用了window的内核机制! 相比之下,重叠io模型比其他模型更能达到更佳的性能。你可以google一下重叠io模型的介绍。或google一下各种模型的比较。 Windows 下的编程 和UNIX下本来就不一样。Iocp模型应该是Windows 下正解!你先做一个WINDOWS下的吧! 据我所知ACE可以跨平台,这是个大东西,我不懂。lz所说的跨平台是不是只是windows/linux??那就干脆windows用iocp,linux用epoll#ifdef WIN32//iocp实现#else//epoll实现#endif socket连接理论上只要内存足够就可以无限的开。当然每个操作系统也有最大的socket数量,不过这也是天文数字。大多数服务器程序的主要性能指标应该是每秒处理多少个请求。 对于视频点播服务器这样的程序,随便写写好了,不用担心程序效率,瓶颈肯定在IO上。 我有个朋友的公司采用的平台是Windows,采用Winsock的事件模型(Event)加线程池技术,一般一台普通PC可以支持5000左右的在线连接。 像QQ主要用的是UDP,辅以TCP,他的Server的并发访问量就更为巨大了! 谢谢大家的热心支持,我现在的目标是要求支持一个普通的pc能够支持1w个连接!iocp 模型 和epoll模型是好像是目前最好的好的选择,这样的话,必须做两个服务器啊!有点晕的!ps 希望大家多多讨论,别为了分,随便拷贝,没意思!! Windows: IOCPLinux: epoll 有点蒙了,难道构建一个高并发的socket服务器,就这么简单?大家都是三言两语???哎,实在不懂,大家能帮忙的帮个忙啊! 这个问题不太好描述.贴图,挖空?? 跪求解决之道 VC编写,管理本机端口程序(关闭或者打开某个端口,如上网的80端口,BT所用的端口) 急!!我的HTML文件老是解析不了XML文件 如何对邮件中进行了qp编码的值进行解码? 快要结分了:COLORREF变量得到RGB值 定义二维数组 我做了一个服务器端侦听程序,怎样简单测试它是否运行正常? 如何使窗体一启动时就最大化? 奇怪奇怪真奇怪, 如何使用脚本语言(VB或JS)对PowerPoint文件操作 创业小半年终于有一个收费的学生 SetBkColor和SetTextColor的问题。
那你在详细点,谢谢了!
我看到网上大都说Iocp模型,可以高并发,但是那个好像利用了window的内核机制!
那就干脆windows用iocp,linux用epoll#ifdef WIN32
//iocp实现
#else
//epoll实现
#endif
像QQ主要用的是UDP,辅以TCP,他的Server的并发访问量就更为巨大了!
ps 希望大家多多讨论,别为了分,随便拷贝,没意思!!
Linux: epoll