游戏运维经验之谈
2016-06-05 19:19
246 查看
2016年6月23日
工作:qqandroid平台全服维护
事件问题:java内存溢出
qqandiroid平台许多服出现游戏登陆时卡69%,89,打印日志出来,发现进程端口已不在,查看系统日志,原来是内存溢出的问题,导致杀死了java程序
解决方案:先查看系统内存,看看有哪一些没有用的服务和进程把他关掉,查看发现nginx和php-fpm是不需要打开的,第二个问题,MySQL内存也给的太大了,24G的系统内存,我们一台机跑五个服,一个服就给2G,然后又给了十五G给MySQL,参数innodb_buffer_pool_size = 15,你说内存怎么可能不爆,再检查一下几台之前经常岩机的新服,发现启动脚本给java的内存比其他机大太多了,旧服300m 2g,而新服却是500m 10G,前面那个参数是启动java时给他的最小大小,后面那个参数值是给java的最大的大小,
执行操作:
1、通过top,netstat查看不闭要的进程,我们这里干掉了Nginx和php-fpm
2、调小MySQL的缓冲池大小为8G,原来为15G,
3、修改给Java程序的内存大小
4、开服后给每台游戏服增加 10G swap 空间
所用工具:Ansible
执行人: wsyht
游戏卡90%游戏报网络不畅
这种情况游戏端口和程序尚在,但登陆不了,具体原因找开发帮忙协助调查
解决方案:
重启程序
CPU优化和内存优化
一般平均单CPU使用率最好不要超过30%,load不超过cpu总内核数的2倍就可以了。
物理内存使用率在50%-80%之间,算是正常使用区间的。
工作:qqandroid平台全服维护
事件问题:java内存溢出
qqandiroid平台许多服出现游戏登陆时卡69%,89,打印日志出来,发现进程端口已不在,查看系统日志,原来是内存溢出的问题,导致杀死了java程序
解决方案:先查看系统内存,看看有哪一些没有用的服务和进程把他关掉,查看发现nginx和php-fpm是不需要打开的,第二个问题,MySQL内存也给的太大了,24G的系统内存,我们一台机跑五个服,一个服就给2G,然后又给了十五G给MySQL,参数innodb_buffer_pool_size = 15,你说内存怎么可能不爆,再检查一下几台之前经常岩机的新服,发现启动脚本给java的内存比其他机大太多了,旧服300m 2g,而新服却是500m 10G,前面那个参数是启动java时给他的最小大小,后面那个参数值是给java的最大的大小,
执行操作:
1、通过top,netstat查看不闭要的进程,我们这里干掉了Nginx和php-fpm
2、调小MySQL的缓冲池大小为8G,原来为15G,
3、修改给Java程序的内存大小
4、开服后给每台游戏服增加 10G swap 空间
所用工具:Ansible
执行人: wsyht
游戏卡90%游戏报网络不畅
这种情况游戏端口和程序尚在,但登陆不了,具体原因找开发帮忙协助调查
解决方案:
重启程序
CPU优化和内存优化
一般平均单CPU使用率最好不要超过30%,load不超过cpu总内核数的2倍就可以了。
物理内存使用率在50%-80%之间,算是正常使用区间的。
相关文章推荐
- [Android]在代码里运行另一个程序的方法
- 我是运营,我没有假期
- 每个 Linux 游戏玩家都绝不想要的恼人体验
- 在 Fedora 上使用 Steam play 和 Proton 来玩 Windows 游戏
- Steam 让我们在 Linux 上玩 Windows 的游戏更加容易
- 如何使用 Steam Play 在 Linux 上玩仅限 Windows 的游戏
- 新一代iPad适配应用之游戏篇
- DB2编程序技巧(1)
- DB2编程序技巧 (四)
- DB2编程序技巧 (六)
- DB2编程序技巧 (三)
- DB2编程序技巧 (九)
- DB2编程序技巧 (七)
- DB2编程序小小技巧
- DB2编程序技巧 (五)
- VB实现的《QQ美女找茬游戏》作弊器实例
- 二级域名原理以及程序
- DB2编程序技巧 (一)
- DB2编程序技巧 (八)
- DB2编程序技巧 (十)