免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1745 | 回复: 6
打印 上一主题 下一主题

提高select/poll的可扩展性设想求证 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-03-14 01:41 |只看该作者 |倒序浏览
在linux2.4内核中不支持epoll,而传统的select/poll的可扩展性(scalability)又比较差。我想,有没有可能通过多线程来解决这个问题。比如如果有数千个连接,就可以每1000个连接在一个线程上使用select/poll实现I/O复用,当连接数增加的时候(达到硬件/OS处理极限之前),多创建线程就可以了。
不知道这个设想可不可行?

论坛徽章:
0
2 [报告]
发表于 2005-03-14 16:51 |只看该作者

提高select/poll的可扩展性设想求证

自己顶一下

论坛徽章:
0
3 [报告]
发表于 2005-03-14 16:55 |只看该作者

提高select/poll的可扩展性设想求证

POLL本身就不受连接数的限制了。
用多线程的话,又多了线程之间的切换,好处不明显啊。

论坛徽章:
0
4 [报告]
发表于 2005-03-14 17:52 |只看该作者

提高select/poll的可扩展性设想求证

原帖由 "精简指令" 发表:
POLL本身就不受连接数的限制了。
用多线程的话,又多了线程之间的切换,好处不明显啊。

虽然poll对于管理的描述符的数目没有限制,但是连接数目多的时候poll的性能就受到影响。

论坛徽章:
0
5 [报告]
发表于 2005-03-15 01:21 |只看该作者

提高select/poll的可扩展性设想求证

对与这么大的压力,我人为你可以选择LOADBANLANCING,单纯的但PROCESS无论采用什么技术,都不是完美的.
可以采用CLUSTER,或者NAT/DNS等算法实现负载均衡.

论坛徽章:
0
6 [报告]
发表于 2005-03-15 01:45 |只看该作者

提高select/poll的可扩展性设想求证

原帖由 "柳五随风" 发表:
对与这么大的压力,我人为你可以选择LOADBANLANCING,单纯的但PROCESS无论采用什么技术,都不是完美的.
可以采用CLUSTER,或者NAT/DNS等算法实现负载均衡.

压力也不算太大吧,希望能够处理2000个连接,主要还是CPU 密集型
的服务器。cluster什么的成本太高了,也不用这么复杂。

论坛徽章:
0
7 [报告]
发表于 2005-03-15 12:50 |只看该作者

提高select/poll的可扩展性设想求证

如果你这里的连接我理解正确的话
那么,无论你采用什么模型,都是大系统,光OS在TCPBUFFER上的开销就要32M~240M左右.更不要提FD数和PROCESS的调度问题了.加上DATA RESOURCE的问题,赫赫,好可怕

如果,你的意思是最大用户数的话,那是有其他解决方法的.具体采用什么方式和你的系统性能需求,业务模型有很大关系.比如采用SINGLE PROCESS处理的话,那么你需要确认你的SERVICE处理的能力范围,PIPELINE/STREAM LINE体系构构,最大可能的并发程度等(比如BUFFER的构成方式, BUFFER与SERVICES和NET地衔接方式等),这种模型成为APP紧偶合.
此外,还有一种方式,就是PROCESS GROUPS+PROCESSES+THREADS( SERVICES)的方式,松偶合的,可以再起前面加上一个REQUEST ALLOCATOR,负责DISPATCH请求(对等模式,实际上也是一种负载平衡的实现),不要也可以,那就需要其他机制还负责PROCESS GROUP的调度了,MASTER/SLAVE模式的DISPATCH方式.采用这种模型,在SOFTWARE层上解决了系统的动态伸缩问题,但是需要OS和HARDWARE层支持.

如果你真有2000个SESSION/CONNECTION的话,恐怕系统规模不小呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP