URN Logo
UNIX Resources » Linux » China Linux Forum » C/C++编程版 » 37 » [精华] linux服务器程序设计怎样处理上万个并发长连接?
announcement 声明: 本页内容为中国Linux论坛的内容镜像,文章的版权以及其他所有的相关权利属于中国Linux论坛和相应文章的作者,如果转载,请注明文章来源及相关版权信息。
Resources
China Linux Forum(finished)
Linux Forum(finished)
FreeBSD China(finished)
linuxforum.net
  业界新闻与评论
  自由软件杂谈
  IT 人生
  Linux软件快递
  翻译作坊
  Linux图书与评论
  GNU Emacs/XEmacs
  Linux 中文环境和中文化
  Linux桌面与办公软件
  Linux 多媒体与娱乐版
  自由之窗Mozilla
  笔记本电脑上的Linux
  Gentoo
  Debian 一族
  网络管理技术
  Linux 安装与入门
  WEB服务器和FTP服务器
  域名服务器和邮件服务器
  Linux防火墙和代理服务器应用
  文件及打印服务器
  技术培训与认证
  Linux内核技术
  Linux 嵌入技术
  Linux设备驱动程序
  Linux 集群技术
  LINUX平台数据库
  系统和网络安全
  CPU 与 编译器
  系统计算研究所专栏
  Linux下的GUI软件开发
  C/C++编程版
  PHP 技 术
  Java&jsp技术
  Shell编程技术
  Perl 编 程
  Python 编 程
  XML/Web Service 技术
  永远的Unix
  FreeBSD世界
   
[精华] linux服务器程序设计怎样处理上万个并发长连接?
 
 
 
 
 
 
 
 
 
 
 
 
 
Subject: [精华] linux服务器程序设计怎样处理上万个并发长连接?
Author: lan_wjz    Posted: 2005-02-28 11:13    Length: 262 byte(s)
[Original] [Print] [Top]
各位老大,有谁知道在服务器程序设计中怎样处理上万条并发长连接吗? 是用线程池呢?还是用RAW SOCKET呢? 哪种方法效率更高呢??? 急等,谢谢!!!!!

我的e-mail : lan_wjz0870@sina.com
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: h_falls    Posted: 2005-03-01 14:24    Length: 228 byte(s)
[Original] [Print] [Top]
不知道你的长连接是什么样的长连接, 是类似于网游的那种还是类似于emule发布服务器的那种

据我所知,很少有大型的网游能一台服务器支持上万人在线的,wow也就最多5000-6000人在线。

linux下可以试试epoll
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: tclwp    Posted: 2005-03-01 14:51    Length: 399 byte(s)
[Original] [Print] [Top]
参考一下这里
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=program&Number=529852&page=&view=&sb=&o=&vc=1
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: lan_wjz    Posted: 2005-03-01 18:48    Length: 331 byte(s)
[Original] [Print] [Top]
谢谢两位老兄!
这两天在网上查了写资料,觉得还是用epoll比较好。
h__falls,你做过网游的服务器吗?我门的SERVER和网游SERVER还真有点相象,要在一段时间内并发处理众多连接,多数连接上都有数据的I/O操作。考虑到多线程消耗的调度资源太大,所以不想用它,不过听说2。6每秒可以产生5000个以上的线程,不知道用2。6的多线程调度回怎样?
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: gxcooo    Posted: 2005-03-01 22:05    Length: 68 byte(s)
[Original] [Print] [Top]
我已经在网游服务器上用了epoll,很不错
而且RHEL4AS已经发布了
----
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: lan_wjz    Posted: 2005-03-02 09:40    Length: 308 byte(s)
[Original] [Print] [Top]
EPOLL() 也有不同的使用方法,对于并发连接数量不大的需求,直接使用轮询的方法应该就可以了(标准模式),但是对于并发连接数量非常大的需求(比如几万个并发连接),是不是还需要和多线程(进程)联合使用呢?
哪位老大能给个类似与应用模式一样的应用框架给大家参考参考,大家共同研究。
小弟在此谢过 :)
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: mechgouki    Posted: 2005-03-02 20:37    Length: 305 byte(s)
[Original] [Print] [Top]
重复一点,关于线程,只有当你预计到会使用block的操作时候才应该用上---让os帮助你调度,如果有了ET模式的EPOLL,关于socket的IO应该不需要线程的帮助

建议你看一下leader/follower的线程池模式------ICE在它的spec就明确提到了它是使用这个模式,也许这是它高效的原因,至少有网游用这个OO中间件作底层的
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: lan_wjz    Posted: 2005-03-04 19:07    Length: 24 byte(s)
[Original] [Print] [Top]
再没有高人发表意见了吗?
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: gxcooo    Posted: 2005-03-04 22:36    Length: 104 byte(s)
[Original] [Print] [Top]
mechgouki说的那个网游wish在几个月前就宣布停止开发了,说实话ICE做网游不一定适合,用不好会造成响应延迟太大
----
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: fans1    Posted: 2005-03-05 10:28    Length: 42 byte(s)
[Original] [Print] [Top]
之所以停止开发,我想未必全是技术方面的问题
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: mechgouki    Posted: 2005-03-05 18:56    Length: 110 byte(s)
[Original] [Print] [Top]
其实一开始就不看好用oo中间件方式开发网游:)

不过ICE还是有可取之处的,只是代码实在难以看懂@_@
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: gxcooo    Posted: 2005-03-05 20:00    Length: 74 byte(s)
[Original] [Print] [Top]
我有个朋友从事wish中国版的开发,接触过其代码,下个项目他们不再打算使用ICE了
----
[Original] [Print] [Top]
Subject: [精华] Re: linux服务器程序设计怎样处理上万个并发长连接?
Author: fans1    Posted: 2005-03-08 11:07    Length: 24 byte(s)
[Original] [Print] [Top]
因为ICE太复杂还是怎么的?
[Original] [Print] [Top]
« Previous thread
在C给程序中给全局变量指定地址
C/C++编程版
37
Next thread »
怎样才能在configure文件中添加自己定义的参数?
     

Copyright © 2007 UNIX Resources Network, All Rights Reserved.      About URN | Privacy & Legal | Help | Contact us
备案序号: 京ICP备05006143    webmaster: webmaster@unixresources.net
This page created on 2008-07-17 03:53:09, cost 0.052477121353149 ms.