看了VC网络编程。里面介绍到的一些模型
比如select模型 FD_SET 结构最多管理64个socketWSAEventSelect模型中使用的WSAWaitForMultipleEvents句柄数量最大也是64个。
现在假如我的客户端的数量有1000个,那怎么办? 后面介绍的完成端口模型说是可以管理几百甚至上千个,但是假如我做的是一个对战平台,同时在线的有5,6万人,或者是木马有众多的数量,那用的是什么模型呢?
比如select模型 FD_SET 结构最多管理64个socketWSAEventSelect模型中使用的WSAWaitForMultipleEvents句柄数量最大也是64个。
现在假如我的客户端的数量有1000个,那怎么办? 后面介绍的完成端口模型说是可以管理几百甚至上千个,但是假如我做的是一个对战平台,同时在线的有5,6万人,或者是木马有众多的数量,那用的是什么模型呢?
解决方案 »
- vs2010 位图的加载
- DLL(C++)如何操作VB中WebBrowser对象?
- 如何暂时存储带透明色用GDI+画预画的这个图像 用GDI+画的一个png ------------------- 急
- 有关没有连接网络时CHtmlView::Navigate的问题。
- 为什么 CSpinButtonCtrl 按向下钮增加,按向上减少?微软的恶作剧?
- 在多线程中使用ActiveX控件的问题
- 熟悉CRichEditCtrl控件的进来
- (1)<<关于3com CoreBuilder 6000交换机的配置问题! >>的解决方法
- 这两个文件是做什么的,desktop.ini,folder.htt,哪位老兄能回答这个问题? 高分!
- DCOM启动失败!!!
- VC中如何编写计算过程
- 一个很简单的读写锁模型,请高手帮忙看下会不会死锁,或者有哪些需要改进的地方?
所以你不应该担心系统是否能分配出足够的句柄(你这里是套接字),你担心某些api的限制倒是有可能性的,拿select来说,在linux下必须要重新编译内核,在windows下虽然可以重新定义FD_SETSIZE,但在套接字越多的情况下,select的性能越发的差,所以最根本的解决办法还是换模型,比如iocp或者epoll,换了模型,如果还是有限制,则多创建几个模型(selec模型也可以通过这种方式来扩容),假如iocp限制100个套接字的话,你可以创建10个iocp句柄,就达到1000个套接字了。