LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 817|回复: 5

Linux开发大容量网络服务器程序

[复制链接]
发表于 2004-8-23 17:22:43 | 显示全部楼层 |阅读模式
我们知道在Windows下开网络服务器程序可以使用IOCP(完成端口)的模式支持高达上万的并发用户连接。但是在LINUX/UNIX下有什么方式开发如此高的并发连接用户的服务器程序?
我想LINUX/UNIX应该是有什么方式来完成的,不然好多的网络服务器怎么能在UNIX/LINUX上运行呢?
发表于 2004-8-23 18:37:38 | 显示全部楼层
如果你说的IOCP只是一种服务程序的模式,那么无所谓在什么系统下来实现

如果IOCP还是一种与windows系统相关的工具,那么Linux有没有它都不会成为创建大型网络程序的障碍

最关键的是,Linux与windows同样支持标准的网络协议,并提供对并发程序的强大支持,有什么理由作不出大容量网络服务程序呢?
 楼主| 发表于 2004-8-24 08:14:32 | 显示全部楼层

那么LINUX使用什么模式开发大容量的服务器程序呢?

那么LINUX使用什么模式开发大容量的服务器程序呢?
IOCP是WINDOWS特有的,LINUX没有相对应的模式
发表于 2004-8-24 09:27:17 | 显示全部楼层
需要同时处理很多连接的话,通常是用select(2),poll(2)配合非阻塞IO模拟的假AIO或者POSIX系列的真AIO API。要是用2.6内核,POSIX AIO效率可能会更高。当然要是考虑兼容性和可移植,还是用select吧
发表于 2004-8-24 12:50:25 | 显示全部楼层
我是用多线程实现的,不知道是否觉得可行?
发表于 2004-8-24 14:35:19 | 显示全部楼层
不知新的nptl性能如何。如果是以前的user level thread的话,可以考虑重写程序了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表