游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1745|回复: 1

一台服务器达到多少个客户端才需要用到线程池来管理线

[复制链接]

75

主题

102

帖子

110

积分

注册会员

Rank: 2

积分
110
发表于 2009-3-20 13:53:00 | 显示全部楼层 |阅读模式
看了好多关于线程池的资料,越看越乱,这里整理出几个观点,大家看看那些是对的,那些是错的,多谢

一、游戏中线程池主要用在短时间在线的线程,比如人物注册,不适合对长期在线的线程管理,如人物动作,文字等等

二、基于UDP的通信不需要用到线程池,即使在线人数达到几万人,也只要开两个固定线程就完全足够了(一个接受数据,一个处理数据)

三、如果人数在100人一下的 应该为每一个进来的客户端新开一个线程,人物退出关闭线程

四、市场上成熟的3D游戏服务器都是用到了线程池技术。。

五、也就是我的题目了,一千以上的客户端连接需要用到线程池来管理。



请问这些论点对么,如果错,请问错在哪里呢?

4

主题

64

帖子

71

积分

注册会员

Rank: 2

积分
71
发表于 2009-3-20 17:13:00 | 显示全部楼层

Re: 一台服务器达到多少个客户端才需要用到线程池来管理




一、游戏中线程池主要用在短时间在线的线程,比如人物注册,不适合对长期在线的线程管理,如人物动作,文字等等
  看法:服务器需要解决的是io同步操作阻塞导致效率低下的问题,这个问题本身不一定使用线程池,而是通过异步操作。


二、基于UDP的通信不需要用到线程池,即使在线人数达到几万人,也只要开两个固定线程就完全足够了(一个接受数据,一个处理数据)
   看法:UDP通讯和线程池没有关系。之所以你觉得不需要,是因为UDP操作是立即返回的。

三、如果人数在100人一下的 应该为每一个进来的客户端新开一个线程,人物退出关闭线程
      看法:多少个线程需要看你运营服务器环境去测试,100个线程对系统整体性能已经有些影响了。
四、市场上成熟的3D游戏服务器都是用到了线程池技术。。
     看法:这个和3D没有关系。 多少服务器使用线程池不重要,而是他用来干什么。主流的游戏服务器(gameserver)不会通过线程池来解决压力问题。一般dbServer才可能会这样。
五、也就是我的题目了,一千以上的客户端连接需要用到线程池来管理。
     看法:这个问题不懂,不能回答。  
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-20 01:51

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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