Java的JVM參數調優

字段說明

-Xms1024m -Xmx1024m -Xmn256m -XX:SurvivorRatio=4 -XX:NewRatio=3 -XX:+PrintGCDetails -XX:+PrintCommandLineFlags -XX:UseParNewGC【完整字段】

-Xms1024m -Xmx1024m -Xmn256m -XX:+PrintGCDetails -XX:+PrintCommandLineFlags【常用字段】

-Xms1024m                初始值 1G
-Xmx1024m                  最大值 1G
-Xmn256m                 最小值 256M
-XX:SurvivorRatio=4    新生代   設置   eden區 1:4 (S0區+S1區) 比例
-XX:NewRatio=3           老年代   設置   eden區 3:1 老年代區
-XX:+PrintGCDetails       GC執行一次  打印一次日誌
-XX:+PrintCommandLineFlags 打印更詳細的GC日誌
-XX:UseParNewGC        對eden區使用 並行回收機制

jvm 調優

free -g 以g類型 顯示內存情況

top 任務管理器

ps -ef|grep -c xxx查詢xxx總進程數

jstat -gc pid pid垃圾回收情況

jstat -gc pid i 以i毫秒查詢pic的gc回收情況

jstat -gc pid i j 以i毫秒查詢pic的gc回收情況查詢j次

LINUX環境下

與Spring Boot項目同路徑下新建一同名配置文件。

例如:當前項目爲demo.jar,那麼新建一文件demo.conf,內容如下:

#jvm運行參數
JAVA_OPTS="-server -Xms512M -Xmx512M -Xmn256M -XX:+PrintGCDetails -XX:+PrintCommandLineFlags"  

#項目運行參數
RUN_ARGS="--server.port=8081 --logging.level=INFO --spring.thymeleaf.cache=true --logging.file=/var/log/demo.log"

總體來說使用頻率較高的application可以把內存適當設置大一點;使用頻率爲一般的可以設置低一點,比方521M;網關方面的線程池主要安裝CPU的核心來設置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章