国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
總結(jié)經(jīng)常使用的jvm調(diào)優(yōu)參數(shù)

本文總結(jié)項(xiàng)目中經(jīng)常使用的一些重要的jvm參數(shù)

堆內(nèi)存Xmx和Xms

  1. 每個(gè)服務(wù)程序我們可能都會(huì)調(diào)整堆內(nèi)存大小,初始化和最大值,通過

-Xms[unit] 堆最小值
-Xmx[unit] 堆最大值
heap size設(shè)置的堆的大小,unit可以是k,m, g分別表示千字節(jié),Mb,Gb。例如我們想配置最小堆為2G,最大堆為4G,如下:

java -Xms2g -Xmx4g -jar demo.jar
  1. PermSize和Metaspace size

在JDK1.8之前所有的靜態(tài)類、方法,final值都保存到PermSize中,尤其是在啟動(dòng)tomcat時(shí),我們通常加上-XX:PermSize=<size>參數(shù)。避免加載類過多導(dǎo)致OOM。
在JDK1.8之后時(shí)通過Metaspace size,替代了PermSize,據(jù)說會(huì)帶來很多好處,尤其是OOM問題,JVM會(huì)自動(dòng)的調(diào)整這個(gè)值,如果想通過參數(shù)指定,可以使用下面的參數(shù):

-XX:MetaspaceSize=[unit] 初始值
-XX:MaxMetaspaceSize=[unit] 最大值

java -XX:MaxMetaspaceSize=128m -XX:MaxMetaspaceSize=256m

垃圾回收器

JVM有四種垃圾回收器實(shí)現(xiàn):

  • Serial Garbage Collector
  • Parallel Garbage Collector
  • CMS Garbage Collector
  • G1 Garbage Collector

4種垃圾回收器實(shí)現(xiàn)機(jī)制,請(qǐng)自行搜索學(xué)習(xí),網(wǎng)上資料很多

4中垃圾回收器,而可以通過下面參數(shù)來進(jìn)行設(shè)置,指定在程序中使用哪種回收器:

-XX:+UseSerialGC
-XX:+UseParallelGC
-XX:+USeParNewGC
-XX:+UseG1GC

垃圾回收器日志

當(dāng)我們想看GC工作狀態(tài)時(shí),最簡(jiǎn)單的方式就是配置GC的日志,使用下面的參數(shù),可以記錄GC日志:

-XX:+UseGCLogFileRotation 重復(fù)覆蓋,就像log4j一樣
-XX:NumberOfGCLogFiles=< number of log files > 多少個(gè)文件之后,開始覆蓋之前
-XX:GCLogFileSize=< file size >[ unit ] 每個(gè)日志文件大小
-Xloggc:/path/to/gc.log 日志文件保存路徑和名稱

例如,我們想將文件保存到/home/myan/gclogs/gc.log,保存3個(gè)log,每個(gè)log10M,那么配置如下:

-XX:+UseGCLogFileRotation  -XX:NumberOfGCLogFiles=3-XX:GCLogFileSize=10M -Xloggc:/home/myan/gclogs/gc.log

也可以加上兩個(gè)額外的參數(shù)-XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps,打印GC的時(shí)間

內(nèi)存溢出

在大型的應(yīng)用中,我們經(jīng)常碰到內(nèi)存溢出(簡(jiǎn)稱OOM),我們通常通過配置core dump,將內(nèi)存中信息保存到dump文件,供我們分析,參數(shù)如下:

-XX:+HeapDumpOnOutOfMemoryError 當(dāng)遇到OutOfMemoryError錯(cuò)誤時(shí),JVM會(huì)將dump heap到文件
-XX:HeapDumpPath=./java_pid.hprof 文件的保存路徑,java進(jìn)程的pid會(huì)追加到文件名中
-XX:OnOutOfMemoryError="< cmd args >;< cmd args >" 當(dāng)OOM發(fā)生時(shí),需要執(zhí)行的命令
-XX:+UseGCOverheadLimit

例如:想在發(fā)生OOM錯(cuò)誤時(shí),執(zhí)行重啟服務(wù)的腳本

-XX:OnOutOfMemoryError="./restart-svr.sh"

ratio的計(jì)算方法

跟我一起解兩道數(shù)學(xué)題,就知道怎么計(jì)算了。O(∩_∩)O

  • SurvivorRatio

例題:如果SurvivorRatio=4,Young Gen為30M,那么Eden和Survivor分別時(shí)多少?

令:   S = SurvivorSpace   E = Eden   Y = Young generation    根據(jù)條件得到:     S/E = 1/4  那么 E = 4S2S + E = Y2S + 4S = YS = Y/6帶入數(shù)字30,得到:S = 30/6 = 5M,得到Survivor=5M,Eden=20M
  • NewRatio

例題:如果NewRatio=3, HeapSize=40M, 那么Young Gen為多少?

令:T = TenuredY = Young GenH = Heap根據(jù)條件得到:    Y/T = 1/3Y + T = HY + 3Y = H4Y = H帶入數(shù)字40, 得到:4Y = 40, Y = 10,所以Young Gen為10M,那么Tenured為30M
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
美團(tuán)面試:熟悉哪些JVM調(diào)優(yōu)參數(shù),幸好我準(zhǔn)備過!
JVM參數(shù)查看與設(shè)置
J2EE性能分析篇】JVM參數(shù)對(duì)J2EE性能優(yōu)化的影響
jvm設(shè)置
旺的共享空間: eclipse.ini內(nèi)存設(shè)置各參數(shù)含義
合理配置RESIN內(nèi)存
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服