mirror of
https://github.com/postyizhan/NitWikit.git
synced 2024-11-21 03:13:36 +08:00
Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
f9a1f518b6
@ -40,6 +40,8 @@ MiniMessage 的实质是一个叫 Adventure 的库,这是它的 [文档](https:/
|
||||
|
||||
:::
|
||||
|
||||
[在线编辑](https://mcg.tuanzi.ink)
|
||||
|
||||
和 [格式化代码](format-code.md) 篇一样,用一个 TrMenu 菜单配置展示下:
|
||||
|
||||
```
|
||||
|
@ -11,11 +11,13 @@ slug: /optimize/jvm/dragonwell
|
||||
## 基础
|
||||
|
||||
```shell
|
||||
-XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:+UseVectorCmov -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:ThreadPriorityPolicy=1 -XX:AllocatePrefetchStyle=3
|
||||
-XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:+UseVectorCmov -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:ThreadPriorityPolicy=1 -XX:AllocatePrefetchStyle=3 -XX:+UseVtableBasedCHA -Dcom.alibaba.enableFastSerialization=true
|
||||
```
|
||||
|
||||
这些是基础参数
|
||||
|
||||
如果使用的是从 GitHub 下载的预览版可以添加`-XX:+UseBigDecimalOpt -XX:+ReduceNMethodSize`
|
||||
|
||||
## ZGC
|
||||
|
||||
Dragonwell 11 的 ZGC 不同于 OpenJDK11 的 ZGC,Dragonwell 通过移植 OpenJDK 15+的 ZGC补丁,使得Dragonwell的ZGC可以投入生产环境
|
||||
@ -27,13 +29,9 @@ Dragonwell 11 的 ZGC 不同于 OpenJDK11 的 ZGC,Dragonwell 通过移植 OpenJD
|
||||
添加参数
|
||||
|
||||
```shell
|
||||
-XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=28 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -XX:G1SATBBufferEnqueueingThresholdPercent=30 -XX:G1ConcMarkStepDurationMillis=5 -XX:G1ConcRefinementServiceIntervalMillis=150 -XX:G1ConcRSHotCardLimit=16
|
||||
-XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=28 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -XX:G1SATBBufferEnqueueingThresholdPercent=30 -XX:G1ConcMarkStepDurationMillis=5 -XX:G1ConcRefinementServiceIntervalMillis=150 -XX:G1ConcRSHotCardLimit=16 -XX:+G1BarrierSimple
|
||||
```
|
||||
|
||||
## 内联优化
|
||||
|
||||
添加参数`-XX:+UseVtableBasedCHA`
|
||||
|
||||
## 对象头压缩
|
||||
|
||||
可以节约10%左右的Java对象内存占用,并可能提升程序性能。**目前仅支持G1GC和ParallelGC**
|
||||
|
@ -23,7 +23,13 @@ x86 Java 8 用户可以添加以下附加参数:
|
||||
-XX:+UseXMMForArrayCopy
|
||||
```
|
||||
|
||||
G1GC 参数
|
||||
如果使用的是从 GitHub 下载的预览版可以添加
|
||||
|
||||
```shell
|
||||
-XX:+UseBigDecimalOpt
|
||||
```
|
||||
|
||||
## G1GC 参数
|
||||
|
||||
```shell
|
||||
-XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=28 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -XX:G1SATBBufferEnqueueingThresholdPercent=30
|
||||
@ -61,4 +67,8 @@ Wisp在JVM上提供了一种用户态的线程实现。开启Wisp2后,Java线程
|
||||
|
||||
## G1ElasticHeap
|
||||
|
||||
G1ElasticHeap 是一种 GC 功能,用于将 Java 堆的内存返回给操作系统,以减少 Java 进程的内存占用。要启用此功能,你需要通过以下选项使用 G1 GC:`-XX:+G1ElasticHeap -XX:+ElasticHeapPeriodicUncommit`
|
||||
G1ElasticHeap 是一种 GC 功能,用于将 Java 堆的内存返回给操作系统,以减少 Java 进程的内存占用。要启用此功能,你需要通过以下选项使用 G1 GC:
|
||||
|
||||
```shell
|
||||
-XX:+G1ElasticHeap -XX:+ElasticHeapPeriodicUncommit
|
||||
```
|
||||
|
@ -33,8 +33,6 @@ flowchart TD
|
||||
好的兼容性 -->|不需要| E[Azul Zing]
|
||||
```
|
||||
|
||||
这可能与你想的不太一样
|
||||
|
||||
:::tip Zulu的性能
|
||||
|
||||
根据官方对 Zulu 的定位,Zulu 的重点是**安全性和稳定性**,而非性能
|
||||
@ -57,6 +55,61 @@ GraalVM 在 22.3.0 修复了所有已知的 Minecraft 错误
|
||||
|
||||
:::
|
||||
|
||||
### 下载
|
||||
|
||||
import Tabs from '@theme/Tabs';
|
||||
import TabItem from '@theme/TabItem';
|
||||
|
||||
<Tabs queryString="jvm-download">
|
||||
<TabItem value="dragonwell" label="Dragonwell">
|
||||
|
||||
Dragonwell 分为 Standard Edition 和 Extended Edition,推荐下载 Extended Edition
|
||||
|
||||
- [官网](https://dragonwell-jdk.io/) 下载区域选择`China Mainland`
|
||||
- [Dragonwell 8 预览](https://github.com/dragonwell-project/dragonwell8/releases)
|
||||
- [Dragonwell 11 预览](https://github.com/dragonwell-project/dragonwell11/releases)
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="graalvm" label="GraalVM">
|
||||
|
||||
GraalVM 分为 Community Edition(CE) 和 Enterprise Edition(EE),除非你服务器大到会被 Oracle 找上门,不然请选择 Enterprise Edition
|
||||
|
||||
- [下载 EE](https://www.graalvm.org/downloads/)
|
||||
- [下载 CE](https://github.com/graalvm/graalvm-ce-builds/releases/)
|
||||
|
||||
:::tip
|
||||
|
||||
Oracle 官网同样提供 GraalVM,但是上面的 GraalVM EE 包含了企业版套件,这些MC根本用不到,只需要企业版编译器就可以了
|
||||
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="zing" label="Azul Zing">
|
||||
|
||||
Azul Zing 不能直接被下载,需要填写试用申请表,但我们通过神秘手段搞到了安装包
|
||||
|
||||
- [RPM](https://cdn.azul.com/zing-zvm/ZVM24.07.0.0/zing24.07.0.0-3-jdk21.0.3.0.101-linux.x86_64.rpm)
|
||||
- [TAR.GZ](https://cdn.azul.com/zing-zvm/ZVM24.07.0.0/zing24.07.0.0-3-jdk21.0.3.0.101-linux_x64.tar.gz)
|
||||
- [DEB](https://cdn.azul.com/zing-zvm/ZVM24.07.0.0/zing24.07.0.0-3-jdk21.0.3.0.101-linux_amd64.deb)
|
||||
- [官网](https://www.azul.com/downloads/#prime)
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="zulu" label="Azul Zulu">
|
||||
|
||||
Azul Zulu 支持 Java 8 以上,Java 7 和 6 需要成为客户才能下载
|
||||
|
||||
- [官网](https://www.azul.com/downloads/?package=jdk&show-old-builds=true#zulu)
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="openj9" label="OpenJ9">
|
||||
|
||||
OpenJ9 有认证版和非认证版,主要是因为和 OpenJ9 的关系和操作系统的关系而使用不同的许可证罢了,本质代码是一样的,直接下`IBM Semeru Runtime Open Edition`就行
|
||||
|
||||
- [官网](https://developer.ibm.com/languages/java/semeru-runtimes/downloads/)
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## 垃圾回收器
|
||||
|
||||
经过我们的多次测试,G1GC和ZGC 最适合MC服务器(还有一个 Zing C4)
|
||||
|
@ -54,13 +54,6 @@ C4 是 Zing 中唯一的垃圾收集器,取代了 OpenJDK 中可用的其他垃
|
||||
|
||||
使用`-XX:+UseZST` 开启
|
||||
|
||||
## 下载
|
||||
|
||||
虽然需要公司账户,但我们通过神秘手段搞到了安装包,都是JDK
|
||||
|
||||
[RPM](https://cdn.azul.com/zing-zvm/ZVM24.07.0.0/zing24.07.0.0-3-jdk21.0.3.0.101-linux.x86_64.rpm)
|
||||
|
||||
[TAR.GZ](https://cdn.azul.com/zing-zvm/ZVM24.07.0.0/zing24.07.0.0-3-jdk21.0.3.0.101-linux_x64.tar.gz)
|
||||
|
||||
[DEB](https://cdn.azul.com/zing-zvm/ZVM24.07.0.0/zing24.07.0.0-3-jdk21.0.3.0.101-linux_amd64.deb)
|
||||
|
||||
|
@ -9,7 +9,7 @@ sidebar_position: 6
|
||||
|
||||
## 面板
|
||||
|
||||
查看[通用 | 面板搭建](/docs/process/dashboard.md)
|
||||
查看[通用 | 面板搭建](https://yizhan.wiki/NitWikit/process/dashboard)
|
||||
|
||||
## ServerCtrl
|
||||
|
||||
|
@ -47,7 +47,7 @@ Mod 服最开始就必须选好核心,也就是 Forge 还是 Fabric 的问题。
|
||||
|
||||
此类核心的存档结构有些不同
|
||||
|
||||
如果你是从非 Bukkit 系核心或单人存档迁移,请查看[ Leaves 的迁移文档](https://docs.leavesmc.org/zh_Hans/leaves/guides/migration)(通用所有Bukkit插件端)
|
||||
如果你是从非 Bukkit 系核心或单人存档迁移,请查看[Leaves 的迁移文档](https://docs.leavesmc.org/zh_Hans/leaves/guides/migration)(通用所有Bukkit插件端)
|
||||
|
||||
:::
|
||||
|
||||
@ -71,9 +71,7 @@ flowchart TD
|
||||
生电 --> 1.18以下
|
||||
生电 --> 1.18以上
|
||||
1.18以下 --> Purpur
|
||||
1.18以上 --> 假人,以及一些偏门的特性
|
||||
假人,以及一些偏门的特性 -->|需要| Leaves
|
||||
假人,以及一些偏门的特性 -->|不需要| Leaf
|
||||
1.18以上 --> Leaves
|
||||
1.16.5+ --> 高性能
|
||||
高性能 --> 1.19以上
|
||||
1.19以上 --> Leaf
|
||||
|
@ -17,13 +17,13 @@ sidebar_position: 8
|
||||
|
||||
进入github.com,点击sign up
|
||||
|
||||
![屏幕截图 2024-08-11 163001.png](https://imgos.cn/2024/08/11/66b8765b6bcd8.png)
|
||||
![屏幕截图 2024-09-16 082129.png](https://image.dooo.ng/c/2024/09/16/66e77a1f926ed.webp)
|
||||
|
||||
进入后按照提示完成注册(看不懂自己用翻译)
|
||||
|
||||
进入主页后点击左上的new(绿色的)
|
||||
|
||||
![屏幕截图 2024-08-11 163405.png](https://imgos.cn/2024/08/11/66b876de014f8.png)
|
||||
![屏幕截图 2024-09-16 082239.png](https://image.dooo.ng/c/2024/09/16/66e77a62129d2.webp)
|
||||
|
||||
会跳转到一个界面
|
||||
|
||||
@ -32,13 +32,13 @@ Repository name填 你的用户名.github.io
|
||||
如果不会git的话就勾选Add a README
|
||||
|
||||
然后点Create repository
|
||||
![微信图片_20240811163744.png](https://imgos.cn/2024/08/11/66b877b934816.png)
|
||||
![微信图片_20240916082548.png](https://image.dooo.ng/c/2024/09/16/66e77b19a55fd.webp)
|
||||
|
||||
会直接到创建的项目主页
|
||||
|
||||
点Add file 会出来两个选项点Upload files
|
||||
|
||||
![屏幕截图 2024-08-11 163900.png](https://imgos.cn/2024/08/11/66b8780401ac8.png)
|
||||
![微信图片_20240916082915.png](https://image.dooo.ng/c/2024/09/16/66e77be956da5.webp)
|
||||
|
||||
会来到上传界面,上传你的网站源码(首页的名字要改成index)
|
||||
|
||||
@ -46,13 +46,14 @@ Repository name填 你的用户名.github.io
|
||||
|
||||
上传完后点Commit changes
|
||||
|
||||
![微信图片_20240811164435.png](https://imgos.cn/2024/08/11/66b879592f5bb.png)
|
||||
![微信图片_20240916083119.png](https://image.dooo.ng/c/2024/09/16/66e77c63cfbc1.webp)
|
||||
|
||||
然后你访问 你的用户名.github.io就可以访问了
|
||||
|
||||
如果你做到这一步至此你的网站已经是搭建完成了。但是由于某些特别的原因,大陆访问 Github Pages 服务比较困难。为了保证不懂技术的普通玩家们顺利访你的服务器官网,可以选择以下方式
|
||||
|
||||
### 2\.cloudflare saas回源
|
||||
注意!如果想要域名访问要先在github项目的settings-pages-Custom domain 添加域名
|
||||
|
||||
先将你的回源域名绑定到cloudflare
|
||||
|
||||
@ -62,22 +63,22 @@ Repository name填 你的用户名.github.io
|
||||
|
||||
你的用户名.github.io 选择开启小黄云 点保存
|
||||
|
||||
![微信图片_20240811165109.png](https://imgos.cn/2024/08/11/66b87ad8100c1.png)
|
||||
![微信图片_20240916091413.png](https://image.dooo.ng/c/2024/09/16/66e787097296c.webp)
|
||||
|
||||
然后来到ssl/tls-自定义主机名
|
||||
|
||||
然后选择开通,如果它提示你要绑卡的话,如果你没有卡,你可以上闲鱼买一个15块的代绑
|
||||
|
||||
开通完成后,先在回退源那输入你刚刚创建的DNS记录origin.你的回源域名
|
||||
![微信图片_20240811165404.png](https://imgos.cn/2024/08/11/66b87b8629e25.png)
|
||||
![微信图片_20240916091834.png](https://image.dooo.ng/c/2024/09/16/66e78777d3cb1.webp)
|
||||
|
||||
等待到那里显示生效后 点击添加自定义主机名
|
||||
![屏幕截图 2024-08-11 165519.png](https://imgos.cn/2024/08/11/66b87bd9426cf.png)
|
||||
![微信图片_20240916092036.png](https://image.dooo.ng/c/2024/09/16/66e787f2550a8.webp)
|
||||
|
||||
自定义主机名填你的用来开网站的域名
|
||||
|
||||
填完后点击添加
|
||||
![微信图片_20240811165712.png](https://imgos.cn/2024/08/11/66b87c41ed2bb.png)
|
||||
![微信图片_20240916092238.png](https://image.dooo.ng/c/2024/09/16/66e7886977c18.webp)
|
||||
|
||||
然后按照提示完成txt授权
|
||||
|
||||
@ -85,7 +86,7 @@ Repository name填 你的用户名.github.io
|
||||
|
||||
添加一个类型为CNAME 名称为cdn 内容为
|
||||
cf-cname.xingpingcn.top 不需要开启小黄云
|
||||
![微信图片_20240811170024.png](https://imgos.cn/2024/08/11/66b87d02bf0fb.png)
|
||||
![微信图片_20240916092435.png](https://image.dooo.ng/c/2024/09/16/66e788e814078.webp)
|
||||
|
||||
|
||||
然后来到你的主域名 添加DNS记录
|
||||
@ -149,8 +150,6 @@ cf-cname.xingpingcn.top 不需要开启小黄云
|
||||
|
||||
在控制台输入apt install nginx
|
||||
|
||||
![屏幕截图 2024-08-11 170304.png](https://imgos.cn/2024/08/11/66b87db46ee00.png
|
||||
|
||||
然后找到var-www-html将网站源码上传上去
|
||||
|
||||
随后在 nginx 安装目录中执行 `./nginx` 即可运行服务。
|
||||
@ -161,30 +160,20 @@ cf-cname.xingpingcn.top 不需要开启小黄云
|
||||
|
||||
在浏览器中输入 https://nginx.org/en/
|
||||
|
||||
![屏幕截图 2024-08-11 170434.png](https://imgos.cn/2024/08/11/66b87dffb19c8.png)
|
||||
|
||||
然后点击右边的download
|
||||
|
||||
![屏幕截图 2024-08-11 170519.png](https://imgos.cn/2024/08/11/66b87e2c21176.png)
|
||||
|
||||
进入后点击你电脑适合的版本
|
||||
|
||||
选择下载要下载带有windows这个词的
|
||||
|
||||
![屏幕截图 2024-08-11 170643.png](https://imgos.cn/2024/08/11/66b87e80b7120.png)
|
||||
|
||||
下载完之后解压文件
|
||||
|
||||
解压后进入文件夹,找到名字为html的文件夹
|
||||
|
||||
![屏幕截图 2024-08-11 170738.png](https://imgos.cn/2024/08/11/66b87ec105cb1.png)
|
||||
|
||||
将你的源码上传上去。记住先把原来里面的文件给删掉再放
|
||||
|
||||
然后双击启动nginx.exe
|
||||
|
||||
![屏幕截图 2024-08-11 170845.png](https://imgos.cn/2024/08/11/66b87efdb500b.png)
|
||||
|
||||
为了保证网站时刻开启,建议为 nginx 设置开机自启。
|
||||
|
||||
<!--
|
||||
|
Loading…
Reference in New Issue
Block a user