
本人是1.16.5的小型模组服,当服务器有15名玩家时,使用hotspot会占用约6~7G内存
使用dragonwell时内存占用居然奇迹般的维持在2~3G(之前几乎没对服务器进行任何优化)
并且tps也有肉眼可见的提高
感谢楼主,感谢阿里爹()
1070150591 发表于 2021-7-29 22:13
感谢楼主的测试,已经用上dragonwell了。
本人是1.16.5的小型模组服,当服务器有15名玩家时,使用ho ...
感谢您的回复,因为我自己也就开了一个小服,测的数据不知道大家能否用上。。这样我推荐给别人的时候就更放心了
AdoptOpenJ9和EclipseOpenJ9是一样的吗?如果不是的话,楼主没提AoptOpenJ9。

L_inkOO 发表于 2021-7-30 10:32
AdoptOpenJ9和EclipseOpenJ9是一样的吗?如果不是的话,楼主没提AoptOpenJ9。 ...
我在OpenJ9下面给出的链接都是包含OpenJ9的AdoptOpenJDK了。。 这两个不是一个概念,AdoptOpenJDK是JDK,OpenJ9是JVM,JDK包含JVM。AdoptOpenJDK-OpenJ9 ver的概念,是使用OpenJ9作为JVM的JDK
本帖最后由 1a2s3d4f1 于 2021-8-13 20:40 编辑
现在AdoptOpenJDK转到了https://adoptium.net/,但是没得OpenJ9版本(原因参考),说明以后用openj9要自己构建
,实际上有些用OpenJ9的服务器目的不是牺牲TPS来压内存,参考htps://steinborn.me/posts/tuning-minecraft-openj9/(插话,当Xmx=Xms是,Eden堆完全扩展,为-Xmnx大小,如果用gencon,建议用-Xgc:concurrentScavenge降低gc时间)
balanced gc的主要性能问题有:1.异常的survivor堆(old堆为空,原本应该在balanced-old堆的在balanced-survivor堆,加重GC负担,但是在多次gc后会恢复正常,已修复#11862,未包含在0.27版中)
2.不合理的eden大小(Xms=Xmx时,直接调用最大eden大小为初始eden大小,可能导致性能问题),eden最大大小只有总堆大小的25%,与G1GC相比很小,考虑到mc服务端分配大量短命对象,这可能导致gc频繁触发影响性能,在修复中...(导致gc时间是g1gc 的三倍的屑gc机制)
现在AdoptOpenJDK转到了https://adoptium.net/,但是没得OpenJ9版本(原因参考),说明以后用openj9要自己构建

[警告]全局标记阶段处于在 52% 的时间内处于活动状态。这可能会影响应用程序的性能。增加堆大小可减少 GMP 的频率。
balanced gc的主要性能问题有:1.异常的survivor堆(old堆为空,原本应该在balanced-old堆的在balanced-survivor堆,加重GC负担,但是在多次gc后会恢复正常,已修复#11862,未包含在0.27版中)
2.不合理的eden大小(Xms=Xmx时,直接调用最大eden大小为初始eden大小,可能导致性能问题),eden最大大小只有总堆大小的25%,与G1GC相比很小,考虑到mc服务端分配大量短命对象,这可能导致gc频繁触发影响性能,在修复中...
1a2s3d4f1 发表于 2021-7-30 12:50
现在AdoptOpenJDK转到了https://adoptium.net/,但是没做OpenJ9的构建(看原因可能是暂时的),说明以后用o ...
我也知道adoptium,但是那里下不到我只好还是给adoptopenjdk的链接了。adopt扔在ecp基金会,我感觉j9可能是会有的。关于gc参数这块,我这篇是不会补充,建议您出一篇j9调优。
关于gc这块,我认为很难调了,hotspot的gc技术上是领先j9的,感觉。gencon的分代不太好。balanced的话我没怎么用。不过关于设置更大eden区我是比较赞同的,mc短命对象实在太多了。
我觉得您的openj9研究比较深入,我已经全线迁移到dragonwell和zulu了,最近是没有调openj9了。我可能没法跟上您的思路。。。
本帖最后由 1a2s3d4f1 于 2021-7-30 20:12 编辑
zulu和drangonwell的gc参数估计可以用Aikar G1参数,那个J9的优化参数也是按Aikar G1参数做的
gencon没法调动态分配区域,基本就那样了,balanced gc更新新Eden策略后可以试试
紅葉 发表于 2021-7-30 13:40
我也知道adoptium,但是那里下不到我只好还是给adoptopenjdk的链接了。adopt扔在ecp基金会,我感觉j9可能 ...
zulu和drangonwell的gc参数估计可以用Aikar G1参数,那个J9的优化参数也是按Aikar G1参数做的
gencon没法调动态分配区域,基本就那样了,balanced gc更新新Eden策略后可以试试
楼主辛苦了,请问zulu16的jvm启动参数有什么需要调整或者可以优化的吗?
john9322 发表于 2021-7-31 01:26
楼主辛苦了,请问zulu16的jvm启动参数有什么需要调整或者可以优化的吗?
忘说了,zulu和dragonwell都是基于hotspot的修改,所以可以直接用hotspot的启动参数(网上找到的启动参数基本都是hotspot的,我这里推荐aikar的启动参数,可以搜一下。
想吐槽一下网上的龙井安装教程只有8的
一颗丁子 发表于 2021-7-31 17:39
想吐槽一下网上的龙井安装教程只有8的
安装与zip格式下载的普通jdk都一样,加入path就行了。
用的arclight核心,WIN2012R2,Dragonwell 11,内存占用开机7G,XMS 1024M,XMX 16000M。测试完毕内存占用好高
本帖最后由 紅葉 于 2021-8-2 12:27 编辑
我想请问一下您用普通JDK开服的时候内存占用
请检查一下环境变量等等是不是设对了,也可以试试dragonwell8,因为龙井其实也还没完全迁移到java11我自己服上用了龙井之后是没人玩的时候 ~2200MB 降到 ~1300MB,有人玩的时候 ~3500MB 降到 ~2300MB
我觉得使用龙井后应当会减少内存占用。即使没有,也能把内存和CPU占用基本压平,不会出现大波动导致tps骤降。
huafia 发表于 2021-8-2 06:35
用的arclight核心,WIN2012R2,Dragonwell 11,内存占用开机7G,XMS 1024M,XMX 16000M。测试完毕内存占用好 ...
我想请问一下您用普通JDK开服的时候内存占用
请检查一下环境变量等等是不是设对了,也可以试试dragonwell8,因为龙井其实也还没完全迁移到java11我自己服上用了龙井之后是没人玩的时候 ~2200MB 降到 ~1300MB,有人玩的时候 ~3500MB 降到 ~2300MB
我觉得使用龙井后应当会减少内存占用。即使没有,也能把内存和CPU占用基本压平,不会出现大波动导致tps骤降。
dragonwell8:https://wwi.lanzoui.com/ibOpas6jjvi
dragonwell11:dragonwell.oss-cn-shanghai.aliyuncs.com/11.0.11.7/Alibaba_Dragonwell_11.0.11.7_x64_windows.zip
dragonwell11:dragonwell.oss-cn-shanghai.aliyuncs.com/11.0.11.7/Alibaba_Dragonwell_11.0.11.7_x64_windows.zip
不死的him 发表于 2021-8-3 15:45
dragonwell8:https://wwi.lanzoui.com/ibOpas6jjvi
dragonwell11:dragonwell.oss-cn-shanghai.aliyuncs.c ...
好,谢谢您帮助分享
我正好是玩1.17.1,有空还玩玩1.18,现在懒得开服映射,已经在用游侠了
我是喜欢加一堆mod的,哪怕是一堆优化mod,自从上次1.16开服事故后就再没开过服了
(当时机械动力的蓝图bug把服务端都给我整坏了?重新下载配置都开不起来了,便放弃了
我是喜欢加一堆mod的,哪怕是一堆优化mod,自从上次1.16开服事故后就再没开过服了
(当时机械动力的蓝图bug把服务端都给我整坏了?重新下载配置都开不起来了,便放弃了
糖心柠檬橘 发表于 2021-8-6 13:26
我正好是玩1.17.1,有空还玩玩1.18,现在懒得开服映射,已经在用游侠了
我是喜欢加一堆mod的,哪怕是一堆优 ...
优化mod和插件很少有优化程度达到换jvm程度的。现在有效果的优化mod基本是换算法,修正AI系统,修改世界生成这种的。自动扫地之类的就没有什么效果了。1.17.1和1.18我建议使用azul zulu的jre16/jdk16。
紅葉 发表于 2021-8-3 17:18
好,谢谢您帮助分享
没啥,举手之劳。
龙井其实是有官方的镜像服务器的,但奇怪的是龙井11的镜像服务器地址直接在GitHub上给了,龙井8的镜像服务器却没有。
紅葉 发表于 2021-8-3 17:18
好,谢谢您帮助分享
另外openj9的官网访问不畅,可以考虑增加清华开源软件的镜像下载地址:
https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK
嘛,既然大家都喜欢玩Minecraft,那么方便下别人也是好的。方便别人也等于方便自己。
你好作者 airplane和purpur相比孰优孰劣呢 目前在使用airplane 怪物优化的确实厉害 正在考虑要不要更换为purpur
Mr_Des 发表于 2021-8-8 23:46
你好作者 airplane和purpur相比孰优孰劣呢 目前在使用airplane 怪物优化的确实厉害 正在考虑要不要更换为pu ...
purpur最近合了airplane所有patch。所以优化上是purpur要好,毕竟它又加了点生物优化。
还有一个事是不要上yatopia,虽然合了purpur所有patch而且还加了大量patch,但是整崩了就不好了。
怎么安装Dragonwell
wdsj2018 发表于 2021-8-9 12:33
怎么安装Dragonwell
如果你已经安装了jdk,把jdk目录下东西删除并把dragonwell黏贴进去
我能问个很憨批的问题吗........下载后怎么使用,放在哪里
本帖最后由 小张up 于 2021-8-9 17:04 编辑
(数据删除)
阿里的JDK不一定适合所有服务器,还望楼主添加这一条免得其他人掉坑
一些情况下使用阿里的JDK会导致服务器莫名无限重启,使用OpenJDK则正常
必须承认的是阿里的优化确实好,但兼容性并不能与OpenJDK媲美,还请楼主不要过分吹捧。当然如果你硬是觉得第三方JDK兼容性非常NB不可能有问题那我也没啥可说的了
(数据删除)
阿里的JDK不一定适合所有服务器,还望楼主添加这一条免得其他人掉坑
一些情况下使用阿里的JDK会导致服务器莫名无限重启,使用OpenJDK则正常
必须承认的是阿里的优化确实好,但兼容性并不能与OpenJDK媲美,还请楼主不要过分吹捧。当然如果你硬是觉得第三方JDK兼容性非常NB不可能有问题那我也没啥可说的了
我去试试 待会答复你,我一直在找jvm参数
小张up 发表于 2021-8-9 16:55
(数据删除)
阿里的JDK不一定适合所有服务器,还望楼主添加这一条免得其他人掉坑
一些情况下使用阿里的JDK ...
请您举证
阿里的JDK会导致服务器无限重启
您好,经测试阿里的JDK兼容性非常好。我在工作室里26个服务端上都改用了dragonwell,没有一例出问题。
反而是OpenJDK OpenJ9的兼容性非常差。阿里 龙井JDK和Azul Zulu JDK都是Hotspot的分支,兼容性上做的比我没有举例出来的其他分支要好。甚至能安全运行 Hotspot 上的 Unsafe 黑魔法。
小张up 发表于 2021-8-9 16:55
(数据删除)
阿里的JDK不一定适合所有服务器,还望楼主添加这一条免得其他人掉坑
一些情况下使用阿里的JDK ...
我想,你并不会犯 用jdk11开1.12- 用jdk8开1.17+ 这种事吧。
我在openj9下面张贴了比较大字号的兼容性警示(帖子第一版就有了)。而其他两家为什么没有,是因为我确实在 生产环境 中应用了,没有什么问题。相比较来说,OpenJDK OpenJ9的兼容问题已经摆在台面上了。
掉坑是正常的,认为到处都是坑的那就有点奇怪的说。
本帖最后由 小张up 于 2021-8-9 23:07 编辑
阿里的JDK11开1.16.5,没不妥吧?
无限重启并不一定需要报错,插件有功能不能正常执行需要重启服务器,这便是原因。(测试情况:petblock插件并设置paper.yml
原因:petBlock会修改paper的这一项到true,使用阿里的JDK并不能成功修改,导致不断重启)
服务器千千万情况千千万,你那26个也许均不是个例。
我并没有一口咬定你的教程不行,我也承认阿里的优化没问题,有效,对吧?
好心提醒一下又有什么不妥呢?
另外附上
PetBlock Version 8.26.2
服务端核心 purpur-1.16.5-1171
均为实际测试结果
紅葉 发表于 2021-8-9 19:12
我想,你并不会犯 用jdk11开1.12- 用jdk8开1.17+ 这种事吧。
我在openj9下面张贴了比较大字号的兼容性警 ...
阿里的JDK11开1.16.5,没不妥吧?
无限重启并不一定需要报错,插件有功能不能正常执行需要重启服务器,这便是原因。(测试情况:petblock插件并设置paper.yml
- armor-stands-tick: false
原因:petBlock会修改paper的这一项到true,使用阿里的JDK并不能成功修改,导致不断重启)
服务器千千万情况千千万,你那26个也许均不是个例。
我并没有一口咬定你的教程不行,我也承认阿里的优化没问题,有效,对吧?
好心提醒一下又有什么不妥呢?
另外附上
PetBlock Version 8.26.2
服务端核心 purpur-1.16.5-1171
均为实际测试结果
小张up 发表于 2021-8-9 22:56
阿里的JDK11开1.16.5,没不妥吧?
无限重启并不一定需要报错,插件有功能不能正常执行需要重启服务器,这 ...
已知晓。但是兼容性已经有提醒,不会再加更明显的提示。
小张up 发表于 2021-8-9 22:56
阿里的JDK11开1.16.5,没不妥吧?
无限重启并不一定需要报错,插件有功能不能正常执行需要重启服务器,这 ...
你好,现在在实机上测试 Petblocks 8.26.2 + Paper 1.16.5
使用 Alibaba Dragonwell 8 进行测试。
先以armor-stands-tick: true打开,没有复现。
然后以armor-stants-tick: false打开,成功复现重启。
停止服务器运行,打开paper.yml发现修改成功。
使用 Alibaba Dragonwell 11 进行测试。
先以armor-stands-tick: true打开,没有复现。
然后以armor-stants-tick: false打开,成功复现重启。
停止服务器运行,打开paper.yml发现修改成功。
本帖最后由 小张up 于 2021-8-9 23:45 编辑
掉了一个插件列表,但我估计你不会全加
(数据删除)
刚刚测试结果:阿里的JDK重启后依然提示并继续重启,OpenJDK重启一次修改成功
紅葉 发表于 2021-8-9 23:38
你好,现在在实机上测试 Petblocks 8.26.2 + Paper 1.16.5
使用 Alibaba Dragonwell 8 进行测试。
先以ar ...
掉了一个插件列表,但我估计你不会全加
(数据删除)
刚刚测试结果:阿里的JDK重启后依然提示并继续重启,OpenJDK重启一次修改成功
小张up 发表于 2021-8-9 22:56
阿里的JDK11开1.16.5,没不妥吧?
无限重启并不一定需要报错,插件有功能不能正常执行需要重启服务器,这 ...
关于修改文件失败,您应该检查一下您的文件系统权限问题。
请检查您自身的环境问题。按照您给出的插件和服务端配置了单插件端,没有发现问题。测试结果如上一条回复。
我使用的26个端包括了472个不重复的插件,约450个是spigotmc/mcbbs下载的较大众的插件,另有一些插件是定制的,使用了各种较新奇的技术,均不能复现您的问题。
我能明白您指出他人问题的初衷是好的,但是请您再三确认一下您的问题是真实存在的。
这里附上 先设置其为false 尝试复现其修改为true 的测试的日志。
https://pastebin.ubuntu.com/p/PHtWzMZbkD/
另外希望您能修正一下语气。
小张up 发表于 2021-8-9 23:40
掉了一个插件列表,但我估计你不会全加
(数据删除)
这只能归于环境问题了,恐怕。我的测试用机是刚刚重装好的 plain的 winserver 2019,我想是没有增加什么乱七八糟的插件的。想请问一下您是否有用单插件端测试过。
本帖最后由 小张up 于 2021-8-9 23:58 编辑
单端无问题,多个加载一起便有了问题
同一环境阿里的JDK有问题 OpenJDK无问题
这也算兼容性问题吧。。
但我一直爆着插件列表难道没问题么
紅葉 发表于 2021-8-9 23:50
这只能归于环境问题了,恐怕。我的测试用机是刚刚重装好的 plain的 winserver 2019,我想是没有增加什么 ...
单端无问题,多个加载一起便有了问题
同一环境阿里的JDK有问题 OpenJDK无问题
这也算兼容性问题吧。。
但我一直爆着插件列表难道没问题么
小张up 发表于 2021-8-9 23:40
掉了一个插件列表,但我估计你不会全加
(数据删除)
如果您需要我的龙井测试服务端进行验证,我这里附上链接。(蓝奏网盘,7z格式,对不起,我没有开会员。)
希望您的问题可以得到解决。
https://konekodesu.lanzoui.com/iJDbjsfhc4b
本帖最后由 紅葉 于 2021-8-10 00:02 编辑
我不能认同插件造成的兼容性问题,归于JDK之上。请见谅。我不能添加这个警告。本贴指出的兼容性问题是较为明显的,对不起。如OpenJ9的模块实现等臭名远扬的兼容性问题,我明示了。关于这种问题,我不太能认同,可能是我没有很多经验和耐心,对不起。
小张up 发表于 2021-8-9 23:56
单端无问题,多个加载一起便有了问题
同一环境阿里的JDK有问题 OpenJDK无问题
这也算兼容性问题吧。。
我不能认同插件造成的兼容性问题,归于JDK之上。请见谅。我不能添加这个警告。本贴指出的兼容性问题是较为明显的,对不起。如OpenJ9的模块实现等臭名远扬的兼容性问题,我明示了。关于这种问题,我不太能认同,可能是我没有很多经验和耐心,对不起。
本帖最后由 小张up 于 2021-8-10 00:05 编辑
算了,随意吧
第一次回帖就说了如果你就是认为没问题那就没啥好说的了
紅葉 发表于 2021-8-10 00:00
我不能认同插件造成的兼容性问题,归于JDK之上。请见谅。我不能添加这个警告。 ...
算了,随意吧
第一次回帖就说了如果你就是认为没问题那就没啥好说的了
想看看tx的Kona测评

Freeze_Dolphin 发表于 2021-8-10 10:28
想看看tx的Kona测评
我手上没有linux x64的环境..
现在在租按量机测,但是我是不太看好。tx并不是架在java上,我没有怎么看Kona团队有发文章。阿里的还是有的,wisp之类的。
Freeze_Dolphin 发表于 2021-8-10 10:28
想看看tx的Kona测评

你好,这里是 Kona 的测试数据。
使用环境
操作系统:Ubuntu 20.04 64位
系统配置:1 cpu 2g ram
服务器核心:paper 1.16.5
比corretto差。不会推荐。
本帖最后由 Freeze_Dolphin 于 2021-8-10 14:55 编辑
总觉得这样测评有点奇怪(
使用不同系统测评不同的JDK是不是没有可比性(毕竟还要控制变量(?)
不过应该还是可以作为参考的,谢谢你那
紅葉 发表于 2021-8-10 12:13
你好,这里是 Kona 的测试数据。
使用环境
操作系统:Ubuntu 20.04 64位
总觉得这样测评有点奇怪(
使用不同系统测评不同的JDK是不是没有可比性(毕竟还要控制变量(?)

不过应该还是可以作为参考的,谢谢你那

Freeze_Dolphin 发表于 2021-8-10 14:52
总觉得这样测评有点奇怪(
使用不同系统测评不同的JDK是不是没有可比性(毕竟还要控制变量(?)
唉,我本人用的不是linux,然后今天也没有时间重跑一遍,。。
不过我是拿我腾讯云机子跑的,性能比我家用机只强不弱,嗯,还是腾讯云跑的腾讯jdk。。
有没有教程啊,不会用Dragonwell,求方法..
下载甲骨文官网的jdk会自动安装jre,启动服务器之后是不是就是以jre启动的而不是jdk,我按照您回复其他人的把阿里的jdk文件黏贴到了下载的jdk文件里面,这样是不是就算成功了呢?
青苇羽盈 发表于 2021-8-11 08:25
有没有教程啊,不会用Dragonwell,求方法..
输入java -version,如果弹出的信息内含有alibaba dragonwell就可
紅葉 发表于 2021-8-11 08:26
输入java -version,如果弹出的信息内含有alibaba dragonwell就可
我弹出的信息是java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
青苇羽盈 发表于 2021-8-11 08:28
我弹出的信息是java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java ...
。。还没有安装好
安装好弹出的是:
openjdk version "1.8.0_292"
OpenJDK Runtime Environment (Alibaba Dragonwell 8.7.7) (build 1.8.0_292-b01)
OpenJDK 64-Bit Server VM (Alibaba Dragonwell 8.7.7) (build 25.292-b01, mixed mode)
你应该进入你安装java的地方,你先将 里面的 lib 和 bin 文件夹删除,然后你将 Dragonwell 压缩文件中,bin和lib两个文件夹黏贴到里面。
紅葉 发表于 2021-8-11 08:35
。。还没有安装好
安装好弹出的是:
openjdk version "1.8.0_292"
我安装的是甲骨文网站的jdk,但是他自动安装了jre,我应该把bin和lib黏贴到哪里呢?
青苇羽盈 发表于 2021-8-11 08:37
我安装的是甲骨文网站的jdk,但是他自动安装了jre,我应该把bin和lib黏贴到哪里呢? ...
我建议你把两个里面的都替换掉,因为我不知道你path指向的哪里。。而且dragonwell是jdk,黏贴到jdk和jre里面都不会发生错误。
紅葉 发表于 2021-8-11 08:49
我建议你把两个里面的都替换掉,因为我不知道你path指向的哪里。。而且dragonwell是jdk,黏贴到jdk和jre ...
我尝试两个都黏贴到里面,但是java -version
java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
还是这个