游戏开发论坛

 找回密码
 立即注册
搜索
楼主: huyiit

[讨论] 单服人数承载如何计算?

[复制链接]

12

主题

41

帖子

236

积分

中级会员

Rank: 3Rank: 3

积分
236
QQ
发表于 2010-1-4 17:40:00 | 显示全部楼层

Re:单服人数承载如何计算?

不能拿硬件极限值当承载人数用,这个主要看策划怎么设计关卡,如果所有玩家全扎堆在一屏里,不等服务器当掉,客户端可能就先挂掉了,硬件的物理值在那摆着了,这个不能变,但是策划可以通过关卡上的设计,决定服务器的同时承载人数

13

主题

805

帖子

830

积分

高级会员

Rank: 4

积分
830
发表于 2010-1-4 21:42:00 | 显示全部楼层

Re:单服人数承载如何计算?

我认真看帖,我不说话

4

主题

276

帖子

276

积分

中级会员

Rank: 3Rank: 3

积分
276
发表于 2010-1-4 22:14:00 | 显示全部楼层

Re:单服人数承载如何计算?

我认真看帖,也不说话.

40

主题

1149

帖子

1167

积分

金牌会员

Rank: 6Rank: 6

积分
1167
发表于 2010-1-5 00:51:00 | 显示全部楼层

Re:单服人数承载如何计算?

单台服务器人数承载如何计算?

通常这个单台服务器是指逻辑处理服务器,即响应用户服务请求的那个最主要的。

另外,这个承载人数不是计算,预估这个词比较准确合理一些。

人数承载估算一般通过3块部分的最低数字来确定。
1.游戏数据通讯中最大数据包情况下,网卡在单位1秒时间内可做收发处理的次数极值/每个用户在1秒内可能发生的最大数据包传送需求数。说白了就是最大包的转发次数所对应的用户数。
2.CPU处理能力时钟频率/逻辑处理部分中最大的单个流程所需要的时钟数;简单点说就是最长的那个逻辑处理流程运行一次在CPU系统资源占用率是多少,单位时间是1秒~0.7秒。
3.慢速接口,就是在逻辑处理服务器或者其他服务器中,需要将用户属性信息或者什么重要的数据信息记录到数据库中做长期保存的时候,因为硬盘的读写速度比较慢,会导致占用过多的系统资源,从而导致系统在某个时间段内无法及时或者实时的响应用户的服务请求。不过这问题在现在的硬件和操作系统的解决方案中已经不再那么重要的。

51

主题

3552

帖子

3655

积分

论坛元老

Rank: 8Rank: 8

积分
3655
发表于 2010-1-5 08:59:00 | 显示全部楼层

Re:单服人数承载如何计算?

一般由主程序说了算

88

主题

2743

帖子

4227

积分

论坛元老

Rank: 8Rank: 8

积分
4227
发表于 2010-1-5 14:04:00 | 显示全部楼层

Re:单服人数承载如何计算?

一般只能够通过网游的实际测试,才能得到真实确切的数据。

一般估计有系统的一套复杂的参数和专业的方法,但是最后结果还是一切以实际数据为准!

5

主题

74

帖子

74

积分

注册会员

Rank: 2

积分
74
发表于 2010-1-5 14:16:00 | 显示全部楼层

Re:单服人数承载如何计算?

这个数据不是算出来的,是测出来的。

两种做法:

一种是忽悠法,测试一定小当量的用户负载量,然后被硬件条件所除,最终得出人数。这种数据没有参考价值,适合忽悠代理商。为什么说是忽悠法呢?因为同样的操作在2个人的时候和20000人的时候消耗是不一样的。比如同样喊个世界,系统资源开销是相差巨大的。

一种是实际测试法。在日常的负载测试中总结出若干种最占效率的行为,然后写个脚本模拟大量并发测试,执行这些行为,根据硬件的IO读写、CPU占用、内存使用、带宽占用的情况,最差的结果为最大人数。这种具有实际意义,是在这个人数的情况下能够保证用户体验的数据。

注:3楼的答案就是典型的忽悠法。

180

主题

3511

帖子

3520

积分

论坛元老

Rank: 8Rank: 8

积分
3520
发表于 2010-1-5 15:16:00 | 显示全部楼层

Re: 单服人数承载如何计算?

相对而言,24楼的ID为“金时为开”的人的做法我就很喜欢。

他指出3种方法。
1:根据“网络数据流量”来计算。(这个就是我想说的)
2:根据“CPU计算速度”来计算。(这个我也想到了。不过当时认为网络游戏的主要瓶颈不是计算速度,所以没写)
3:根据“硬盘存储速度”来计算。(这个我没考虑到)
------------------------------------------------

虽然这里只是个贴吧,每个人想在帖子里发什么内容就可以发什么内容,
不过总是有那么一小部分人,就连发帖也很认真很负责。也许是平时的习惯不同吧。
我还是希望GAMERES的贴吧环境像24楼那样。

5

主题

74

帖子

74

积分

注册会员

Rank: 2

积分
74
发表于 2010-1-5 15:25:00 | 显示全部楼层

Re:单服人数承载如何计算?

回28楼的,忽悠也没啥错,毕竟很多时候还是需要忽悠的,如果你理解成攻击那我也没办法。

我之前已经说明了,同样的行为在不同用户的情况下消耗的硬件资源是不一样的,所以不能用除法。大多数情况下,随着人数的增加会导致系统开销几何倍数的增加,这个情况往往和程序的结构设计有关。比如很多休闲游戏把频道都设置成几百人一个频道,就是为了解决这个问题,防止一个频道人数太多而导致通信量激增的情况。

你打开一个用户列表,里面列出1个人和100个人对系统的消耗肯定是不同的
你进一张地图,眼前看到1个人和100个人消耗也是不同的
你喊了一句话,1个人听到和100个人听到还是不同的

所以不能单纯的使用除法,大概描述一下就似乎1个人的时候单人资源消耗是最少的,之后每增加一个人都会有增加。可能是1.1,1.2最后几千人的时候甚至与到一个人的资源消耗到4或者5。基于这样的情况,所以想要得到最后时间的承载量,只能通过测试,因为你不可能每个功能每个功能的去计算曲线然后来进行推算,也计算不过来。

32

主题

1519

帖子

2334

积分

金牌会员

Rank: 6Rank: 6

积分
2334
发表于 2010-1-5 15:30:00 | 显示全部楼层

Re:单服人数承载如何计算?

顶一下30楼的
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-8-14 21:05

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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