游戏服务器JVM性能调优

最近开始优化页游服务端的性能,一些心得总结一下。现在的服务器硬件越来越好,几十G内存,十几个CPU。当硬件不是瓶颈的时候,如果让程序发挥最大效用就成了我们需要考虑的问题。就游戏服务器来说,得满足几个要求,高负载,低延时。特别是在开服当天,大量用户会涌进来,可能给服务器造成压力。使用Java作为服务器语言,除了程序本身的性能外,JVM的配置也直接影响到系统性能。

参数调优

  1. 入门级别的配置一般是:java -server -Xmx5000m Xms5000m

    服务器端的jvm运行程序记得都最好加上 -server 很多默认参数都会根据这个运行模式来优化。这里设置了最大内存和最小内存,一般都是配置成相同的,可以减少内存申请和伸缩带来的性能损耗

  2. 加入垃圾回收算法的配置:java -server -Xmx5000m -Xms5000m -XX:+UseConcMarkSweepGC -XX:+UseParNewGC

    关于垃圾回收的具体算法介绍我这里就不详细描述了,我们都有一个常识,就是尽量减少JVM的full gc的次数和时间,因为full gc 会导致整个系统的暂停(stop the world).为此,我们为老年代选择了UseConcMarkSweepGC 选择了并发gc算法,也为新生代选择了多线程的并行gc算法UseParNewGC。

  3. 设置新生代的内存大小 java -server -Xmx5000m -Xms5000m -Xmn800m -XX:+UseConcMarkSweepGC -XX:+UseParNewGC

    Xmn是新生代的内存大小,包括(eden+ 2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值