免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: fm971
打印 上一主题 下一主题

[算法] 超高性能网络编程, Asynchronous network I/O [复制链接]

论坛徽章:
0
1 [报告]
发表于 2008-07-31 17:26 |显示全部楼层
可以肯定的说这不叫超高性能。单机50w~100w的连接同时在线,还勉强能称.按楼主描述的, 视频这样的东西,用select监视描述符,足够了。
同样的系统调用,和逻辑结构,不同的程序员实现起来差别n大。。。

论坛徽章:
0
2 [报告]
发表于 2008-08-07 16:51 |显示全部楼层
sports.sinajs.cn  单机每秒可以处理15w+ http请求,支撑50w+  connections同时在线.在2cpu  4核机器上测试。
hq.sinajs.cn  每天上百亿http请求。

系统资源都比较空闲,负载比较低。。。

论坛徽章:
0
3 [报告]
发表于 2008-08-09 22:24 |显示全部楼层

回复 #81 idsel 的帖子

看标题   超高性能网络编程, Asynchronous network I/O
底层技术换汤不换药。

论坛徽章:
0
4 [报告]
发表于 2008-08-10 20:59 |显示全部楼层
原帖由 idsel 于 2008-8-10 01:02 发表
你的意思是一个服务器支持几万到几十万路视频?????呵呵~~




哥们,这话我可没说。
视频种东西,占用大量带宽,可能10k用户不到,1G带宽就跑满了。
10k以下的服务,算不上 “高性能网络编程”,更不要说“超高了”。
用epoll就相当于杀鸡用牛刀。
要根据服务的特点去决定你要用什么网络i/o模型。
视频服务的瓶颈并不在监视大量的闲散connections上。
个人觉得,select 足够了。
就更下象棋一样,卒子用好了,一样能将军。

论坛徽章:
0
5 [报告]
发表于 2008-09-09 17:52 |显示全部楼层
原帖由 wwwsq 于 2008-8-28 08:56 发表



"单机每秒可以处理15w+ http请求",取决于每个请求要做多少事情,如果每个请求的工作量都很小,那么只要用合适的方式做好accept就可以了。每秒要做14w次socket accept,这种应用比较罕见。
“支撑50w+   ...



不是类似路由的东西,而是一个类似apache的东西。
当然,如果我愿意,我可以稍微修改就能成为高效的类似路由的东西或者一个高效的代理服务器。
低层技术都不变,作为什么服务,只是一种表现。


50w+  connections , 就是说,有50w人都连接了这个服务器,而且每几秒可能都有一个请求,建立的连接会一直保持着。有走的有来的,50w是活着的连接。



我们扩展性非常好,可以线性扩展。
你的猜测都只有部分正确。
肯定是没有自己动手写过这种东西。

[ 本帖最后由 wyezl 于 2008-9-9 18:06 编辑 ]

论坛徽章:
0
6 [报告]
发表于 2008-09-09 18:00 |显示全部楼层
原帖由 wwwsq 于 2008-8-28 09:06 发表
http://www.xmailserver.org/linux-patches/nio-improve.html

测试说明dual PIII 1GHz, 256 Mb RAM的机器,每秒可以处理约27500个128字节的http请求。

“2cpu  4核机器” 比 “dual PIII 1GHz”的性能高五 ...





不reasonable,我怎么能实现呢。


不过,这个效率我还能提高不少,以前取数据耽误不少时间,我要是愿意可以把取数据的效率提高50倍。
等有人超过我了,我再做改进,现在懒得动。

论坛徽章:
0
7 [报告]
发表于 2008-09-10 15:19 |显示全部楼层
原帖由 wwwsq 于 2008-9-9 19:17 发表



我见过一个服务器每秒钟处理100w+的request,每个request大概十几个字节。

...


哥们这服务器什么配置。网络I/O能达到这个数?

论坛徽章:
0
8 [报告]
发表于 2008-09-12 12:35 |显示全部楼层
原帖由 wwwsq 于 2008-9-11 17:55 发表



千兆网。

100w乘以15字节=15M字节。


只知其一不知其二。

先不算要维持一个http只连接,http头至少要70多字节,只发个hello world加起来也要80字节。



就算只发15个字节,千兆网又能如何,普通网卡一秒也就只能发20w个包。
按你的说法,我如果每个包一个字节,那么一秒发500w个包也很轻松了。。。

就算我用最好的网卡,按我说的这样的普通服务器,每秒50w http处理量,绝对世上罕见,不过对我来说不是很难实现。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP