我在一家小的游戏公司做运维的工作。由于是我们公司的第一款在线的IOS平台的游戏,游戏名称我就不透露了。公司以前没有网络游戏运维的经验,发现我们的游戏存在以下几上方面的问题:
1.数据库的编码不统一,是一个比较大的问题。有用GBK编码的,也有用UTF8编码的,在数据存储或者导入、导出sql语句时经常出问题。
2.没有一个很好的每天收集各个服上数据的机制。公司现在采用的方法是设置“计划任务”,设置在每天凌晨的3:00,让mysql自动生成psc文件。然后在每个服上设置批处理,把生成的psc文件传输到一台虚拟机上,然后让psc文件自动解压,让运营人员登录虚拟机,对每日的数据进行分析与查询。但这种做经常会出现问题,比如数据丢失或者没有log或者db数据库。出现这种情况后,我不得不分别远程登录每个服务器,手动拷贝数据到自己电脑上,然后再发送给运营部,累得半死。现在公司在ios平台已经开了18个服了,当乐平台上2个服,另一款游戏也开了6个服,我能肯定,肯定有比这好几百倍的方法,只是公司研发能力有限,没有做出好的数据收集的功能来。不知道真正的大型游戏公司是怎样处理这个问题的。
3.服务端的程序名称是中文的,在韩国和越南服务器上运行时全是乱码,程序彼此之间无法区分,看着就心烦。
4.游戏服务器程序的下面标有当前在线人数与最高在线人数,虽然有下拉条,但是不管我怎样拖动,在上网本上都无法显示出来。
5.我们的游戏服务器程序当大量玩家登录时,个别程序就会出现未响应的状态。
6.听他们做技术的讲,玩家的一系列动作是直接对数据库进行操作的,这样其实是不稳定的,中间应该加入一个缓冲层。(我不懂编程)
7.账号服务器设置在一服,当一服出现当机时,其他各个服的玩家都不能登录游戏。我不知道更好的解决办法,可是我知道,我们现在采用的解决办法肯定不是最好的。
8.当服务器出现当机时,没有一个消息告知机制。当玩家反映时,我才知道当机了。就会造成故障处理不及时,肯定有更好的解决方法。