非堆内存相关配置
-XX:PermSize
永久区初始大小
-XX:MaxPermSize
永久区最大大小 在JDK1.8中使用-XX:MxMetaspaceSize配置永久区最大大小
-Xss
线程栈大小
-XX:MaxDirectMemorySize
直接内存大小,默认为最大堆空间,即-Xmx。当直接内存使用量达到-XX:MaxDirectMemorySize时,会触发垃圾回收,如果垃圾回收不能有效释放空间,直接内存溢出依然会引起系统的OOM。一般来说直接内存的读写速度会快于堆内存,但申请速度会低于堆内存。直接内存适用于申请次数少,读写频繁的场景。
JVM的工作模式
Server模式比Client模式启动较慢,因为Server模式会尝试收集更多的系统性能信息,使用更复杂的优化算法对程序进行优化。因此,当系统完全启动并进入运行稳定期后,Server模式的执行速度会远远快于Client模式。