日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

JVM 调优手段

發(fā)布時(shí)間:2023/12/31 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JVM 调优手段 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>

uptime // 查看系統(tǒng)負(fù)載情況,運(yùn)行時(shí)間:7分鐘, 3個(gè)連接數(shù),1,5,15分鐘的系統(tǒng)負(fù)載(運(yùn)行的平均進(jìn)程數(shù):0.8,0.93,0.50)

top // 查看系統(tǒng)IO, CPU 進(jìn)程,內(nèi)存 等所有信息

vmstat? | 4?// 統(tǒng)計(jì)CPU 內(nèi)存 IO 等情況 和 上面類似, cs us 說(shuō)明線程切換多

pidstat?// 用于細(xì)致觀察每一個(gè)進(jìn)程,需要額外安裝

-t // 顯示線程

perfmon // 在windows上 查看各種線程情況,系統(tǒng)自帶的

Process Explorer // 一個(gè)比上面更加強(qiáng)大的東西

jps ?// 顯示所有java相關(guān)進(jìn)程 - m -q -l -v?

jmap // 生成java程序堆快照對(duì)象統(tǒng)計(jì)信息 jmap -histo 2972 >cL/a.txt

? ? jmap -dump:format=b, file=c:\heap.hprod 2972 // 導(dǎo)出堆信息

jstack // 打印線程信息 -l 打印鎖 -m ?打印針信息-F 強(qiáng)制 jstack 120 >> C:\a.txt

JConsole //圖形化監(jiān)控?,最要給線程起一個(gè)好聽的名字 便于拍錯(cuò)

Visual VM // 更加漂亮

?JVM 內(nèi)存: 堆 + 永久區(qū) +線程站+直接內(nèi)存。?

堆溢出:增加X(jué)ms 對(duì)空間大小 or 增加是放內(nèi)存頻率

永久區(qū)溢出:類的數(shù)量太多,例如cglib產(chǎn)生大量類 類的metainfor存在permGen 所以造成溢出,增大永久區(qū)大小 or 設(shè)置允許回收class元數(shù)據(jù)。

Java 棧溢出:堆空間 + 棧空間(線程空間) < 總空間。縮小堆空間,解決。

直接內(nèi)存溢出:ByteBuffer.allocateDirect(1024*1024). 減少堆空間,估計(jì)觸發(fā)GC。

MAT(Memory Analyzer) // 一中分析內(nèi)存Dump的軟件

Shallow Heap: 對(duì)象結(jié)構(gòu)大小,比如String結(jié)構(gòu)大小24個(gè)字節(jié),永遠(yuǎn)不變。

Deep Heap: 對(duì)象的真實(shí)占用內(nèi)存的大小。?

Jmeter // 壓力測(cè)試的一個(gè)工具,MAT發(fā)現(xiàn)一個(gè)ConcurrentHashMap 占內(nèi)存很大,存了太多Session,導(dǎo)致Tomcat OOM. Tomcat 默認(rèn)20分鐘過(guò)期。解決方法: 增加堆大小 縮小Session過(guò)期時(shí)間,

計(jì)算系統(tǒng)并發(fā)壓力:JQL 取得Session列表類似SQL,select s.creationTime from session order by time;

(最后一個(gè)session - 第一個(gè)session) = session 創(chuàng)建的持續(xù)毫秒數(shù)

(最后一個(gè)session - 第一個(gè)session) /1000 = 換算成秒?

訪問(wèn)數(shù) /?(最后一個(gè)session - 第一個(gè)session) /1000 ? = 并發(fā)量

eg: 9941 / ((14646646464-143473747374)/ 1000) = 320次請(qǐng)求/秒

?

?

?

?

?

?

?

轉(zhuǎn)載于:https://my.oschina.net/Business/blog/979259

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的JVM 调优手段的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。