第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java垃圾回收器不停的做GC,怎么回事?

java垃圾回收器不停的做GC,怎么回事?

陪伴而非守候 2019-03-23 18:19:56
最近寫了個服務(wù)器小程序,開的線程比較多,大約在1000左右吧,高峰期會更多。今天忽然不停的GC,覺得很納悶,不知道是怎么一回事,應(yīng)該如何去做優(yōu)化?GC日志如下:一次GC的時間間隔不到一秒,每次GC的時間也不到一秒。{Heap before GC invocations=306 (full 0):par new generation total 511936K, used 511872K [0x000000007fff0000, 0x000000009f3f0000, 0x000000009f3f0000)eden space 511872K, 100% used [0x000000007fff0000, 0x000000009f3d0000, 0x000000009f3d0000)from space 64K, 0% used [0x000000009f3d0000, 0x000000009f3d0000, 0x000000009f3e0000)to space 64K, 0% used [0x000000009f3e0000, 0x000000009f3e0000, 0x000000009f3f0000)concurrent mark-sweep generation total 5632000K, used 145047K [0x000000009f3f0000, 0x00000001f6ff0000, 0x00000001f6ff0000)concurrent-mark-sweep perm gen total 512000K, used 35276K [0x00000001f6ff0000, 0x00000002163f0000, 0x00000002163f0000)158889.595: [GC 158889.595: [ParNew: 511872K->0K(511936K), 0.0029090 secs] 656919K->145050K(6143936K), 0.0030557 secs] [Times: user=0.00 sys=0.00, real=0.00 secs] Heap after GC invocations=307 (full 0):JVM的配置參數(shù)如下:-Xms6000M -Xmx6000M -Xmn500M -XX:PermSize=500M -XX:MaxPermSize=500M -XX:SurvivorRatio=65536 -XX:MaxTenuringThreshold=0 -Xnoclassgc -XX:+DisableExplicitGC -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=90 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintClassHistogram -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC
查看完整描述

4 回答

?
喵喵時光機

TA貢獻1846條經(jīng)驗 獲得超7個贊

這jvm參數(shù)是誰給的???
-XX:SurvivorRatio=65536,以為著survivor區(qū)非常小,小到幾乎可以忽略了。你想象500M*1/65538能有多大啊。這參數(shù)默認是8,不知道樓主為什么要這么調(diào)。高并發(fā)可以調(diào)到6。調(diào)到65535,完全無法理解。

-XX:MaxTenuringThreshold=0,這個是新生代晉升到老年代的次數(shù),0次,意味著只要活一次就到老年代了,omg,在高并發(fā)的時候可以不調(diào),默認15次很好。不過調(diào)為0,真的很難理解,可以調(diào)到8試試。
這是兩個大問題。

在高并發(fā)的時候-Xmn500M這個參數(shù)可以還大一點,比如1G或1.5G。


查看完整回答
反對 回復 2019-04-30
?
楊魅力

TA貢獻1811條經(jīng)驗 獲得超6個贊

讓我等2G內(nèi)存的編碼小白,情何以堪。

最好吧功能代碼也貼出來,上面只看出新生代


查看完整回答
反對 回復 2019-04-30
?
www說

TA貢獻1775條經(jīng)驗 獲得超8個贊

1樓說得很對,尤其是這個參數(shù),-XX:MaxTenuringThreshold=0,它是指對象存活多少次再進入老年代的閾值,
設(shè)為0使得你大部分對象存活一次就要開始回收,這應(yīng)該就是你頻繁GC的主要原因了。設(shè)為默認的15左右可以自己實際測試下效果,但設(shè)為0肯定是不OK的。



查看完整回答
反對 回復 2019-04-30
?
呼喚遠方

TA貢獻1856條經(jīng)驗 獲得超11個贊

看到這些JVM參數(shù),是哪個調(diào)的啊?

我估計也根本就沒理解甚至不知道JVM GC原理吧...


查看完整回答
反對 回復 2019-04-30
  • 4 回答
  • 0 關(guān)注
  • 1136 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號