30 生死之战
在游戏数据及时显示上,在线人数是最及时的。笔神阁 bishenge.com基本上登录和下线都会立即看到数字。马上降低到47000的数字瞬间又涨到50000,然后反复起落。同时网络维护发出报警,服务器进出端口负担非常高。这样持续的负载意味着:
曲文豪说:这样会造成登录端口堵塞,会让很多新的玩家登录不上,也会让重新登录的玩家无法上线,比如玩家掉线了或者切换服务器就会卡住。
通常一个游戏随时都有玩家上线下线,但是除了开服,不会突然间发生
大批量玩家集体登录游戏的情况,而控制者利用木马操纵肉鸡的客户端反复登录游戏,瞬间下线两千多角色,瞬间登录如此反复,造成新来的玩家进不了游戏,点击登录就是死循环一样的等待中。
怎么处理,这些机器人来自五湖四海,ip不同,批量封锁账号需要一定时间,而且除了让所有的服务器程序员快速处理之外,也让所有的gm检查,把问题用户的列表提交,然后统一踢下线,再把账号封上一万年!
除了处理当前,要赶紧准备应对措施,当时注册账号非实名制,注册起来很容易(缺乏多重认证才会导致机器人批量注册),要提防更多的注册的用户捣乱,就要有后期应对措施。也就是曾启设计“荣耀对决”模式的测试的时候,发现过一个问题,有的玩家不在乎游戏内退出惩罚,随时离开当前对决,随时加入新的一局,给开房间一起作战的其它玩家带来极其不爽的体验。
当时采用的处理方法是,当一个玩家在“荣耀对决”中强行推出的时候,游戏会进行30秒的倒计时,倒计时过程中强行退出(关客户端进程,拔网线,关机器)上线后再次进入会追加进入时间。这个设计也可以用在推出游戏中,服务器检测到退出客户端程序然后再进入的游戏,如果这个过程间隔不足一分钟,则追加到一分钟……如果玩家在五分钟内连续退出,登录,则每次增加一分钟上线等待时间……诸如此类。
曾启把这个想法告诉刚处理了一批机器人的曲文豪,曲文豪产生了疑问,从道理上说通过延时处理大批量玩家集体登录的请求好比100个人100秒钟内同时进门,一起拥挤,自然门挤塌了也进不去几个,如果改成1秒一个人,排队进入就好很多,门也不会垮了。
曲文豪的意思是有些玩家不小心退出游戏,或者确有必要退出游戏,这样很不公平啊,他们没有犯错误,也要受到延时的惩罚。曲文豪更补充了一点,一半玩家买的是计时卡,他们上下一次花的时间要不要扣点呢?
曾启实在是太佩服程序员的严谨了,要知道有几个人玩家会无聊的反复登录?如果某个玩家因为网络硬件或者特殊原因离开了游戏,重新登录需要一分钟排队,这个能不能忍受,仅仅是一分钟啊,一转眼就过去了,大凡玩客户端网络游戏的,谁不是起码准备了1-2小时的游戏时间,这一分钟绝不会劝退他们。
五分钟中内进来了退出,退出了进来要延长等待,五分钟内两次以上进出的玩家能有几个?不能因为小概率的玩家问题影响大部分的玩家啊!
程序员一旦认可你的道理,就会实现,曲文豪继续在奋战干掉机器人号,表示这波处理完了就去增加延迟。随着机器人数量的减少,登录拥塞的情况慢慢缓解,接下来进来的都是真的玩家,按照估算,到晚上八点九点,应该是三天公测的人数最高的峰值,超过五万没有问题!
可是大家还是不能掉以轻心,对手花费那么多“肉鸡”电脑注册的机器人被ban掉,所有自动加手动的高等级用户被封号,只得到13元钱(第一次曾启让熊总转对方13元,目的是留一个转账记录,并留底预备报案),对方怎么甘心就此罢手,对方的目的势必是找出《天空之城》的问题漏洞,然后发动攻击,让公司可能遭受无法承受的损失前提下勒索钱财,所以还会有攻击,决不能懈怠。
一个小时过去了,另一个小时过去了,在线人数慢慢下来,大多数人回去了,还剩下几个核心人员在看着各种事数据监控,一切正常,注册登录人数都随着夜深下降。观察之前留了几个对方中高级机器人的漏网之鱼,也悄无声息,对方是偃旗息鼓还是蓄势待发?暂时无法确定
第三十章 生死之战