java
-Xmx6G #设置JVM最大可用内存
-Xms1G #设置JVM初始可用内存
-server #Server模式
-XX:+UseG1GC #G1垃圾收集器,用于服务器端、大内存、多CPU情景的垃圾收集器
-XX:MaxGCPauseMillis=20 #设置最大GC停顿时间(GC pause time)指标(target). 这是一个软性指标(soft goal), JVM 会尽力去达成这个目标. 所以有时候这个目标并不能达成. 默认值为 200 毫秒.
-XX:InitiatingHeapOccupancyPercent=35 #启动并发GC时的堆内存占用百分比。G1用它来触发并发GC周期,基于整个堆的使用率,而不只是某一代内存的使用比例。值为 0 则表示“一直执行GC循环)'. 默认值为 45 (例如, 全部的 45% 或者使用了45%).
-XX:+DisableExplicitGC #忽略手动调用GC, System.gc()的调用就会变成一个空调用,完全不触发GC
-Djava.awt.headless=true #是系统的一种配置模式。在该模式下,系统缺少了显示设备、键盘或鼠标。
-Xloggc:/usr/local/kafka_2.11-0.10.2.0/bin/../logs/kafkaServer-gc.log
-verbose:gc #表示输出虚拟机中GC的详细情况
-XX:+PrintGCDetails #垃圾回收统计信息
-XX:+PrintGCDateStamps
-XX:+PrintGCTimeStamps
-Dcom.sun.management.jmxremote #远程对服务器进行监控
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
注:
1、JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升.原因是: 当虚拟机运行在-client模式的时候,使用的是一个代号为C1的轻量级编译器, 而-server模式启动的虚拟机采用相对重量级,代号为C2的编译器. C2比C1编译器编译的相对彻底,,服务起来之后,性能更高.