JFR 定位因?yàn)镾SL導(dǎo)致CPU Load飚高的問(wèn)題該怎么解決,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
潮安網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,潮安網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為潮安1000多家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的潮安做網(wǎng)站的公司定做!
在某一時(shí)刻,某個(gè)微服務(wù)的某個(gè)實(shí)例 CPU 負(fù)載突然飚高
由于建立了很多數(shù)據(jù)庫(kù)鏈接,猜想可能是數(shù)據(jù)庫(kù)比較慢,查看數(shù)據(jù)庫(kù)這段時(shí)間的 SQL 統(tǒng)計(jì),發(fā)現(xiàn)數(shù)據(jù)庫(kù)并不慢。
其中這個(gè)微服務(wù)這段時(shí)間的熱點(diǎn) SQL,執(zhí)行并不慢。那么問(wèn)題出在了哪里呢?可能是由于 GC,可能是由于 safepoint,還有可能是獲取鎖時(shí)間過(guò)長(zhǎng)(參考:Java 監(jiān)控 JFR全解),我們 dump 一下 JFR 并查看其中的 safepoint,GC 以及 Monitor Blocked 相關(guān)事件。
首先查看GC,發(fā)現(xiàn)都是 Young GC, GC 暫停時(shí)間也可以接受。
然后是 safepoint,雖然有采集到 safepoint,但是暫停時(shí)間也沒(méi)有很長(zhǎng)。
最后查看 Java Monitor Block,發(fā)現(xiàn)有很多很長(zhǎng)時(shí)間的鎖等待。
堆棧顯示,阻塞在:void sun.security.provider.SecureRandom.engineNextBytes(byte[])
上面,這就是一個(gè)經(jīng)典的問(wèn)題,Java Random,參考代碼:NativePRNG
// name of the *System* property, takes precedence over PROP_RNDSOURCE private static final String PROP_EGD = "java.security.egd"; // name of the *Security* property private static final String PROP_RNDSOURCE = "securerandom.source"; private static final boolean useLegacyDSA = Boolean.parseBoolean(GetPropertyAction.privilegedGetProperty ("jdk.security.legacyDSAKeyPairGenerator")); static final String URL_DEV_RANDOM = "file:/dev/random"; static final String URL_DEV_URANDOM = "file:/dev/urandom";
涉及到兩種隨機(jī)數(shù) seed 生成方式,一種是"file:/dev/random",另一種是"file:/dev/urandom",通過(guò)設(shè)置系統(tǒng)屬性java.security.egd
指定,默認(rèn)是"file:/dev/random"
在熵池不夠用的時(shí)候,默認(rèn)的"file:/dev/random"會(huì)阻塞,"file:/dev/urandom"不會(huì),繼續(xù)用。對(duì)于我們來(lái)說(shuō),"file:/dev/urandom"夠用,所以通過(guò)-Djava.security.egd=file:/dev/./urandom
設(shè)置系統(tǒng)屬性,使用 urandom 來(lái)減少阻塞。
看完上述內(nèi)容,你們掌握J(rèn)FR 定位因?yàn)镾SL導(dǎo)致CPU Load飚高的問(wèn)題該怎么解決的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
本文名稱(chēng):JFR定位因?yàn)镾SL導(dǎo)致CPULoad飚高的問(wèn)題該怎么解決
標(biāo)題URL:http://chinadenli.net/article10/gjcpdo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、動(dòng)態(tài)網(wǎng)站、面包屑導(dǎo)航、商城網(wǎng)站、ChatGPT、App開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)