作者shdopeoplesn (虚度人蔘)
看板Minecraft
标题[分享] 在Paper1.14.x使用ZGC回收器
时间Mon Jul 1 22:13:03 2019
前几天有某位伺服器内的大佬玩家推荐,才知道有ZGC这东西,
因为我对java开发及GC的机制一知半解,就不献丑探讨理论上的细节,
纯粹分享资料以及实际应用在麦块伺服器上的效果。
首先关於zgc的效能部份可以参考这份文件
http://cr.openjdk.java.net/~pliden/slides/ZGC-FOSDEM-2018.pdf
从文件的第6页得知ZGC的停顿时间可以压在10ms下,
而在第12页中与G1GC比较的图表,更能表现出他的效率之快。
(怕有版权问题就不截图了,G1GC约在200~800ms之间浮动,资料越大停顿越久。)
要启动ZGC的方法很简单,只要是在Linux的环境且JAVA的版本在11以上,
然後於启动伺服器的参数中加入
-XX:+UnlockExperimentalVMOptions -XX:+UseZGC
就可以运作了。
更多关於ZGC的资料可以参考OpenJDK的Wiki
https://wiki.openjdk.java.net/display/zgc/Main
最後这是我几周前用G1GC的Timing,
https://timings.aikar.co/?id=489d8729e6db4ac0b9e1a4b9fc9f3337
https://i.imgur.com/6JUK5DV.png
启动参数
-server -Xms15G -Xmx15G -XX:+UseG1GC -XX:ParallelGCThreads=12
-XX:+UseLargePages
然後是换成ZGC後的TIming
https://timings.aikar.co/?id=20788f4069cb4ac09785bc6e5c2d6d04
https://i.imgur.com/1dvw8sB.png
启动参数
-server -XX:+UnlockExperimentalVMOptions -XX:+UseZGC -Xmx15G
虽然前後有升级过PaperMC的版本,且Timing没有蒐集GC回收时间的细节,
不算严谨的实验,但整体而言TPS还是稳定了不少。
以上,把这好物推荐给大家~
--
我老婆1
http://i.imgur.com/OJHzCls.jpg
我老婆2
http://i.imgur.com/glGrzYI.png
我老婆3
http://i.imgur.com/jZ3qCiH.jpg
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.37.193.220 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Minecraft/M.1561990416.A.FFC.html
1F:推 Arbin: Java11是非常新的版本 就怕换了其他插件会有问题... 07/01 23:54
2F:→ Arbin: ^Java 11以上 07/01 23:55
3F:→ Arbin: 而且下一个LTS版本也还没出来 07/01 23:55
4F:→ Arbin: (目前最新免费支援的LTS版本是Java 8) 07/01 23:56
5F:→ Arbin: 不是免费支援 是免费更新 我一直打错少打orz 07/01 23:56
6F:→ Arbin: 等等 我在白痴 AdoptOpenJDK可以用lol 07/01 23:57
7F:→ Arbin: 而且Java 11就是LTS R 我已经不知道我在干嘛了 抱歉= 07/01 23:58
8F:推 da21510: ZGC不错 07/02 06:44
9F:→ da21510: 1.14早期版本有机率crash 07/02 06:44
10F:→ da21510: 1.14.2以後就不会了 07/02 06:44
11F:→ james58899: Java8已经要停止免费支援了,最好更新到11 07/04 21:17
12F:→ james58899: 不过因为java9的变更,用了黑魔法的东西可能会爆炸 07/04 21:18