怎样用Socket构建提供大规模并发访问的服务器

莫_问 2010-05-20 09:52:33
如何构建大规模高并发Socket访问服务器,需要注意些什么,大家多多给些建议,谢谢了!

不要仅仅局限于windows,或者linux,程序还想跨平台的,希望大家多多支持!
...全文
425 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
linglongyouzhi 2010-05-25
  • 打赏
  • 举报
回复
不是简单,而是太复杂
一般没经验
有经验的高手不到这来,可能也是有商业因素的
Eleven 2010-05-23
  • 打赏
  • 举报
回复
Windows: IOCP
Linux: epoll
莫_问 2010-05-23
  • 打赏
  • 举报
回复
有点蒙了,难道构建一个高并发的socket服务器,就这么简单?大家都是三言两语???

哎,实在不懂,大家能帮忙的帮个忙啊!
莫_问 2010-05-22
  • 打赏
  • 举报
回复
谢谢大家的热心支持,我现在的目标是要求支持一个普通的pc能够支持1w个连接!iocp 模型 和epoll模型是好像是目前最好的好的选择,这样的话,必须做两个服务器啊!有点晕的!


ps 希望大家多多讨论,别为了分,随便拷贝,没意思!!
尹成 2010-05-21
  • 打赏
  • 举报
回复
我有个朋友的公司采用的平台是Windows,采用Winsock的事件模型(Event)加线程池技术,一般一台普通PC可以支持5000左右的在线连接。
像QQ主要用的是UDP,辅以TCP,他的Server的并发访问量就更为巨大了!
linglongyouzhi 2010-05-21
  • 打赏
  • 举报
回复
这个题目可以写本大部头的书了吧
尹成 2010-05-21
  • 打赏
  • 举报
回复
socket连接理论上只要内存足够就可以无限的开。当然每个操作系统也有最大的socket数量,不过这也是天文数字。大多数服务器程序的主要性能指标应该是每秒处理多少个请求。 对于视频点播服务器这样的程序,随便写写好了,不用担心程序效率,瓶颈肯定在IO上。
【天运子】 2010-05-21
  • 打赏
  • 举报
回复
我用链表接收大量的客户端,开始想用连接池的 可惜找不到资料,现在正在用链表试,但是发生的时候出现了问题,可以一起研究下QQ群20135897
hhf 2010-05-21
  • 打赏
  • 举报
回复
据我所知ACE可以跨平台,这是个大东西,我不懂。

lz所说的跨平台是不是只是windows/linux??
那就干脆windows用iocp,linux用epoll

#ifdef WIN32
//iocp实现
#else
//epoll实现
#endif
Hotthing 2010-05-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mni2005 的回复:]
那你在详细点,谢谢了!
我看到网上大都说Iocp模型,可以高并发,但是那个好像利用了window的内核机制!
[/Quote]


Windows 下的编程 和UNIX下本来就不一样。

Iocp模型应该是Windows 下正解!你先做一个WINDOWS下的吧!

莫_问 2010-05-21
  • 打赏
  • 举报
回复
人气这么冷清,哎!!!
sjdev 2010-05-20
  • 打赏
  • 举报
回复
相比之下,重叠io模型比其他模型更能达到更佳的性能。

你可以google一下重叠io模型的介绍

或google一下各种模型的比较
莫_问 2010-05-20
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 happyparrot 的回复:]

这已经是核心建议了。座席制度。
[/Quote]

那你在详细点,谢谢了!
我看到网上大都说Iocp模型,可以高并发,但是那个好像利用了window的内核机制!
快乐鹦鹉 2010-05-20
  • 打赏
  • 举报
回复
这已经是核心建议了。座席制度。
莫_问 2010-05-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 happyparrot 的回复:]

搞个socket连接池
[/Quote]

别说这么简单,要思路也不能这么简单啊??
快乐鹦鹉 2010-05-20
  • 打赏
  • 举报
回复
搞个socket连接池

18,356

社区成员

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

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