CS服务器到底是如何消耗我们的硬件资源的
基本上,CS并不是一个对硬件要求很高的游戏,但是任何事情总有一个度,你永远不要指望你的486能够拖动16人的服务器,既便你使用Linux,FreeBSD,whatever...
我们来看看CS到底是如何消耗我们的硬件资源的:
CPU
如果要达到理想的情况,没有任何Lag,请记住,每位玩家大约会消耗50MHz的CPU运算能力。这样,一个2G的CPU在驱动32人满员的服务器时,峰值情况下,会消耗80%的CPU资源。如果你此时正在浏览有大量flash,java的网站或是甚至在服务器上面CS(天啊 ),那么,请务必接受不定期lag的事实。
【要点】: 50MHz/每人
带宽
同样的,理想情况下(我指的是获得最好的图像细节和获取所有服务器信息),那么每位玩家需要占用服务器的平均带宽是5KB/sec。注意,是Byte而不是bit,所有,对于所谓的1M带宽的网络而言,您实际获得的带宽是1024/8=128KB,因此,大致可以流畅的驱动26名玩家。当然,前提条件还是你并没有在服务器上同时下载DVD,或者在线看电影(你不会真的这么做吧 )
【要点】: 5KB/sec/每人 kB而不是kb
内存
内存,很少成为lag的主要问题,而且并不随人数的增长而迅速增长。一般而言,CS服务器需要60-80M内存。如果你能够充分保障,并有大概40%左右的空闲内存,那么这块就OK了。
【要点】: CS服务器会消耗60-80M内存
Half-Guard
我们还记得CS1.3时代的服务器吗,所谓32人的服务器铺天盖地,几乎是个宣传卖点。但是在VAC反作弊推出后,这样的服务器越来越少了。一个自然是因为大家开始憎恨混战,另一个原因是任何反作弊程序都大量的消耗了CPU。其中,最明显的是HLG。HLG采用了定期扫描的办法,并常驻内存,用于反wallhack和aimbot,这都是吃CPU的大户,更为糟糕的是,HLG1.35前并没有对AMD芯片(3D Now)做优化,因此AMD平台的服务器会更加的雪上加霜。因此,狂暴军团的建议是,要么索性放弃越来越成为鸡肋的HLG,要么就不要打开HLG所有的参数,比如反透视,反自动射击等。
【要点】: HLG是资源消耗大户,不要全部enable HLG所有的参数,除非你对自己的硬件条件信心满满
其他因素
我们不认为statsme这样的软件,会占用太多的CPU或是内存。但是,一个是例外,那就是psychostats,或者hlstats。请不要把CS服务器和psychostats web服务器,MySQL放在同一个硬件机器上面,除非你安装了多路高端CPU和海量内存。
如何知道服务器lag的原因
我并没有心理准备,听到大家还在用Win98做CS服务器。因此,如果是用Win2k或者WinXP的话,请打开“任务管理器”和HLSW,在lag多发时间,监视你的服务器硬件资源消耗情况。
通常情况下,一旦发生lag,总有可怜的玩家会抱怨说“lag a”或者“ka”,这时候,我们需要马上看“任务管理器”“进程”和“性能”一栏,看看到底是那个进程吃的了我们的CPU和内存,而此时的CPU和内存的消耗又是否达到瓶颈?这样,我们就可以简单的知道,自己需要升级那个部分的硬件了,或者,就缩减服务器支持的人数。
【要点】: 利用“任务管理器”找到硬件的瓶颈所在