摘要: 本周我们游戏《怪物世界》在运营过程中,出现了一次严重影响外网玩家的运营事故。因为情况比较特殊,特记录如下。 先说一下游戏本身,这是一个大世界的MMO ARPG,所谓大世界是指不会分区,所有玩家的数据都是在一个世界里面。项目在11年6月正式上线,已经在外网跑了一年多,现在程序已经比较稳定。程序本身的性能也一直表现良好,整个系统的最高在线实际有跑到三万多,单台服务器的实际负载有跑到七千多,对于一个运算性能并不低的ARPG来说,数据也算是不错的了。在正常维护更新的情况下,不应该再出大的运营事故才对。 意外首先发生的这周的头几天,偶尔在线曲线能看到有几处陡降,和运维勾通过后,也没有在网络和服务... 阅读全文
posted @ 2012-09-08 15:42 肉松 阅读(373) 评论(0) 推荐(0)
摘要: 昨天《怪物世界》有出一个和负载相关的运营事故,具体事故我另外开贴,因为中间涉及到系统load参数异常,在网上查了下资料,感觉都没有解释清楚。最后查到英文的维基百科,终于算是完全说清楚了。 我把维基的原文和我的译文一起贴出来,方便以后对这个问题有疑惑的同学查询。 译文如下: 在UNIX 系统中,系统的 load 是一个关于计算机计算量的指标。load average 表示在一个时间段内的系统平均负载(load),它一般显示成三个数值,代表了系统在过去一分钟,五分钟及十分钟的平均负载。 UNIX系列操作系统的负载计算方法 ... 阅读全文
posted @ 2012-09-07 23:11 肉松 阅读(1210) 评论(0) 推荐(0)
摘要: 上周四公司有一个服务端程序的交流,中间讨论到如何有效利用现在服务器的多核优势,提高单服的负载。 稍有经验的网络游戏服务端开发人员,首先会想说把文件读写等操作慢速设备的操作独立出来,变成单独的线程,那么我们可能会把网络IO,以及文件LOG独立出来,用单独的线程处理。 如果一个游戏服务器,仅开了几个IO线程,比如说开两个线程,一个做网络IO,一个做文件LOG,再加一个逻辑线程的话,那么这个进程的负载应该会受限于单个逻辑线程的运算量。 但只是这样的话是远远不够的。现在我们使用的后端游戏服务器,动辄都是4核,8核的线程,稍好一点的可能都会有16个以上的CPU核心。上面的做法,至多只能利用... 阅读全文
posted @ 2012-09-06 17:40 肉松 阅读(2377) 评论(2) 推荐(0)
摘要: 其实很早已经就有写博客的想法,但是之前一直觉得自己的积累有限。 一来觉得可能对其他人帮助不大,另外也是觉得有怕出丑的感觉。直到昨天看到我朋友的一个博客,只有几句话:”阿聪要回台湾去了,在大陆待了11年后说准备回家做点生意,不想搞游戏了。虽然很久不在一起工作,但听到“不准备做游戏了”,就感觉像是以前的一位战友,编到了其他连队,在一场自己没参与的战斗中倒下了。。。那天喝了不少啤酒,boxing cat brewery自己酿的,很不错哦。 “(http://www.cnblogs.com/eygneph/archive/2012/07/10/2585368.html) 我瞬间觉得感慨满身,一路伤感. 阅读全文
posted @ 2012-09-06 11:42 肉松 阅读(173) 评论(0) 推荐(0)
摘要: 连上memcache,然后stats,详细如下:mqq@32_167_game:~> telnet server portTrying 172.16.32.166...Connected to 172.16.32.166.Escape character is '^]'.statsSTAT pid 26530STAT uptime 5807STAT time 1258643806STAT version 1.2.2STAT pointer_size 64STAT rusage_user 12.372773STAT rusage_system 24.233514STAT c 阅读全文
posted @ 2011-06-16 14:55 肉松 阅读(297) 评论(0) 推荐(0)