我有一台服务器和 Windows Vista,64 位,4GB RAM。有时服务器会随机进入页面文件,并断开所有在线用户的连接。只有在我单击 cmd.exe 窗口后,它才会重新出现。如何将程序标记为不符合页面文件的条件?
如果这相关,我正在使用具有以下命令行参数的 Minecraft 服务器:
java -server -Xmx256M -Xms256M -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseAdaptiveGCBoundary -XX:MaxGCPauseMillis=200 -XX:-UseGCOverheadLimit -XX:SurvivorRatio=16 -Xnoclassgc -XX:UseSSE=3 -XX:ParallelGCThreads=3 -jar minecraft_server.jar nogui
答案1
我怀疑你的选择包括:
- 购买更多 RAM,以便可用内存超过所有正在运行的程序所需的总内存。
- 运行较少的其他程序和服务,以便总内存需求小于可用内存
- 增加进程的 CPU 优先级(任务管理器、进程、右键单击)。但这只是猜测 - 我不知道更高的 CPU 优先级是否真的会降低内存不足时页面被调出并随后出现页面错误的可能性。
- 尝试 Minecraft 服务器的标准 JVM 设置
- 确定哪些其他进程正在使用大量内存
- 询问 Notch 为什么页面错误会导致连接断开。