中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

GC垃圾回收

發布時間:2020-06-08 11:00:39 來源:網絡 閱讀:540 作者:黃燕平 欄目:軟件技術
  1. gc=full gc +young gc

  1. Java jvm 內存=堆內存+非堆內存

  2. 堆內存(-Xms-Xmx=年輕代(-Xmn+年老代

-Xms,初始分配內存,-Xmx最大分配內存,一般情況下設置成一樣的值

  1. 年輕代=Eden+s0+s1

  2. 非堆內存=持久代(-XXPermSize -XX:MaxPermSize+code cache(-XX:reservedcodecachesize)

-XX:PermSize(初始值大小)-XX:MaxPermSize(最大值)

jvm內存模型圖】

GC垃圾回收

  1. gc:自動檢測和釋放不再使用的內存。(垃圾回收)

  2. Minor gc:頻率快是正常 ,也叫young  gc

  3. Major gc:盡可能讓他頻率少【重點關注】  ,也叫full gc

  4. 持久代(Perm):使用的class對象

  5. Jvm的生命周期:①一個對象,首先放置在Eden區,結果發現需繼續使用,不能進入gc回收,則會放置在s區,s0s1隨意。②如果放在s0區,過一段時間仍不能gc回收,則會放置在s1區③再過一段時間仍不能回收,則會存放在年老代區域。④在年老代存放很長時間后,可能被major gc回收,也可能繼續存活

  6. Jvm內存參數設置

  • -Xms-Xmx設置為一樣的值,設置為可用內存的80%

  • -Xmn設置為堆內存的3/8

  • -XX:PermSize(默認為物理內存的1/64)-XX:MaxPermSize(默認為物理內存的1/4)

  1. Jvm公共參數配置

  • -server服務器模式,一定要放在所有參數之前

  • -Xss:指定每個線程占的大小(建議不要超過1M

  • -XX:SurvivorRatio:設置年輕代里面Eden區和s區的大小比值

  • -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=path_addressJVM崩潰的時候會打印出heap dump

  • -XX:+AggressiveOpts:啟用這個參數,則每當JDK版本升級時,你的JVM都會使用最新加入的優化技術(如果有的話)

  • -Djava.awt.headless=true:一般放在最后,主要是解決圖表不兼容

  1. gc的類型

  • Serial GC:適用內存占用比較少的應用,性能最差

  • Parallel GC:年輕代多線程,年老代使用單線程

  • Parallel Old GC:年輕代和年老代都使用多線程收集垃圾

  • CMS:多線程并發回收垃圾,適用于不能忍受長時間停頓要求快速響應的應用,比較常用,最好和-XX:+UseParNewGC一同使用

  • -XX:+UseG1GC

  1. gc相關參數

  • -XX: +DisableExplicitGC:禁止使用System.gc

  • -XX:+PrintGCTimeStamps -XX:+PrintGCDetails Xloggc:<filename>打印gc回收的詳情日志

  • -XX:+UseGCOverheadLimit:讓程序提前結束,達到預警目的

  • -XX:+UseCMSCompactAtFullCollection:對存活對象進行整理,使內存碎片減少


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新津县| 罗山县| 察雅县| 古丈县| 鄂尔多斯市| 丰顺县| 武鸣县| 丹凤县| 镇远县| 永泰县| 漯河市| 鹤峰县| 壶关县| 梅河口市| 德阳市| 新丰县| 衡东县| 泊头市| 岢岚县| 永胜县| 嘉善县| 榆林市| 康平县| 汶川县| 铜川市| 皮山县| 汉源县| 伽师县| 汝南县| 连云港市| 定结县| 临城县| 松原市| 章丘市| 丹巴县| 突泉县| 海淀区| 凉城县| 溆浦县| 合肥市| 酉阳|