Sye*_*zvi 6 java garbage-collection jvm-arguments
我正在使用Java 5,我们的自定义服务器应用程序需要GC调整,因为有时我们在高峰时段会遇到15-20秒的暂停.我们在具有JVM args的服务器类机器上运行Java 5-server -d64
有没有办法告诉JVM当前使用哪种GC算法?
http://docs.oracle.com/javase/1.5.0/docs/guide/vm/gc-ergonomics.html
在运行服务器VM的服务器级计算机上,垃圾收集器(GC)已从先前的串行收集器(-XX:+UseSerialGC)更改为并行收集器(-XX:+UseParallelGC).您可以使用-XX:+UseSerialGCjava命令的命令行选项覆盖此缺省值.
1)我想知道真的发生了吗?
我的下一个问题是我在命令行参数中添加了以下内容
-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime -Xloggc:logs/gc.log
2)除了记录GC日志外,它们是否会对正在运行的JVM产生任何性能或行为影响?
如果 GC 成为一个问题,我建议您研究一下Java RTS(实时系统)。
Java RTS 允许您精确控制 GC 何时工作。这意味着您可以完全控制最坏的情况,因此可以模拟您的系统在可能的压力条件下的表现。