日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

JDK為什么廢棄永久代,而引入元空間

來源: 責編: 時間:2023-09-28 10:05:43 370觀看
導讀今天我們來說說這個 JVM 的相關知識,因為面試簡直是問到麻木的問題,那就是關于 JVM 的相關知識,今天了不起再次來和大家聊一下這個知識,我們從一些比較奇怪的問題說起,也不說那些經常會問到的內容了,比如 JVM 的垃圾回收機

今天我們來說說這個 JVM 的相關知識,因為面試簡直是問到麻木的問題,那就是關于 JVM 的相關知識,今天了不起再次來和大家聊一下這個知識,我們從一些比較奇怪的問題說起,也不說那些經常會問到的內容了,比如 JVM 的垃圾回收機制什么的。KiT28資訊網——每日最新資訊28at.com

JDK 的元空間

我們都知道,在 JVM 中,,JVM 內存共分為虛擬機棧、堆、方法區、程序計數器、本地方法棧五個部分。KiT28資訊網——每日最新資訊28at.com

他們的作用,了不起給大家整了個圖解。KiT28資訊網——每日最新資訊28at.com

圖片圖片KiT28資訊網——每日最新資訊28at.com

這就是 JVM 中不同模塊對應的不同的作用。KiT28資訊網——每日最新資訊28at.com

那么什么是永久代,什么是元空間呢?KiT28資訊網——每日最新資訊28at.com

永久代:

在jdk7以及jdk7之前,方法區被稱為永久代(PermGen)KiT28資訊網——每日最新資訊28at.com

此時永久代是 Java 堆(Java Heap)的一部分,用于存儲類信息、方法信息、常量池信息等靜態數據。KiT28資訊網——每日最新資訊28at.com

元空間(Metaspace)

元空間不再與堆連續,而是直接存在于本地內存中,也就是機器的內存。理論上機器內存有多大,元空間的野心就有多大。KiT28資訊網——每日最新資訊28at.com

而在JDK1.7之前,HotSpot 虛擬機把方法區當成永久代來進行垃圾回收。而從 JDK 1.8 開始,移除永久代,并把方法區移至元空間,它位于本地內存中,而不是虛擬機內存中。KiT28資訊網——每日最新資訊28at.com

在Java7時,仍然有永久代,永久代也與堆中的老年代連續,但永久代中存儲的部分數據已經開始轉移到Java Heap或Native Memory中了,比如:KiT28資訊網——每日最新資訊28at.com

  • 符號引用(Symbols)轉移到了Native Memory
  • 字符串常量池(interned strings)轉移到了Java Heap
  • 類的靜態變量(class statics)轉移到了Java Heap

HotSpots取消了永久代,那么是不是也就沒有方法區了呢?KiT28資訊網——每日最新資訊28at.com

當然不是,方法區是一個規范,規范沒變,它就一直在,只不過取代永久代的是元空間(Metaspace)而已。KiT28資訊網——每日最新資訊28at.com

那么它和永久代有什么不同呢?這就是個問題了。KiT28資訊網——每日最新資訊28at.com

那么他們的不同點都有哪些呢?KiT28資訊網——每日最新資訊28at.com

元空間和永久代的不同點:KiT28資訊網——每日最新資訊28at.com

存儲位置不同

為什么說存儲位置不同呢?KiT28資訊網——每日最新資訊28at.com

永久代在物理上是堆的一部分,和新生代、老年代的地址是連續的,而元空間屬于本地內存。KiT28資訊網——每日最新資訊28at.com

存儲內容不同

在原來的永久代劃分中,永久代用來存放類的元數據信息、靜態變量以及常量池等。現在類的元信息存儲在元空間中,靜態變量和常量池等并入堆中,相當于原來的永久代中的數據,被元空間和堆內存給瓜分了。KiT28資訊網——每日最新資訊28at.com

圖片圖片KiT28資訊網——每日最新資訊28at.com

為什么要廢棄永久代,而使用元空間來進行替換呢?

這時候我們就有了新的問題,為什么要廢棄永久代,而使用元空間來進行替換呢?KiT28資訊網——每日最新資訊28at.com

首先我們得知道,在原來的永久代劃分中,永久代需要存放類的元數據、靜態變量和常量等。KiT28資訊網——每日最新資訊28at.com

它的大小不容易確定,因為這其中有很多影響因素,比如類的總數,常量池的大小和方法數量等。KiT28資訊網——每日最新資訊28at.com

-XX:MaxPermSize 指定太小很容易造成永久代內存溢出。KiT28資訊網——每日最新資訊28at.com

第二個原因則是移除永久代是為融合HotSpot VM與 JRockit VM而做出的努力,因為JRockit沒有永久代,不需要配置永久代。KiT28資訊網——每日最新資訊28at.com

第三個原因永久代會為GC帶來不必要的復雜度,并且回收效率偏低。KiT28資訊網——每日最新資訊28at.com

其實還有的人覺得,Oracle收購了jrockit虛擬機,要將它和HotSpot做整合,而jrockit是沒有永久代的而且jrockit用戶也沒有配置永久代大小的習慣所以將廢棄永久代與jrockit保持一致采用元空間實現方法區。了不起覺得也有一定的道理。KiT28資訊網——每日最新資訊28at.com

畢竟兩大虛擬機要做統一永久代和元空間勢必要廢棄一個,而永久代的痛點是在于大小不好設置,設置小了會頻繁發生GC,而且永久代的GC是效率很低且費時間,因為判斷一個類是否可以被回收的條件很苛刻且費時,會占用資源影響用戶線程的執行導致整體吞吐量變低。KiT28資訊網——每日最新資訊28at.com

而實際上永久代不是本地內存是虛擬機內存也就是是屬于JVM進程的內存,所以如果設置過大就回造成內存的浪費,空余部分內存JVM進程本身用不到也不讓其他進程使用。KiT28資訊網——每日最新資訊28at.com

如果使用元空間的話直接使用的是本地內存,默認也是不加以控制最大值的可以自己擴張,這樣可以減少GC提升吞吐量,再有哪怕設置了最大值由于使用的是直接內存,空余的內存也是允許其他進程使用的。KiT28資訊網——每日最新資訊28at.com

所以,大家知道為什么要替換了吧。KiT28資訊網——每日最新資訊28at.com

既然都已經要替換,那么一定是廢除永久代是對 JVM 來說,肯定是好處多多的。KiT28資訊網——每日最新資訊28at.com

廢除永久代的好處

  • 由于類的元數據分配在本地內存中,元空間的最大可分配空間就是系統可用內存空間。不會遇到永久代存在時的內存溢出錯誤。
  • 將運行時常量池從PermGen分離出來,與類的元數據分開,提升類元數據的獨立性。
  • 將元數據從PermGen剝離出來到Metaspace,可以提升對元數據的管理同時提升GC效率。

既然我們在這里說到這個Metaspace,那么肯定得說說這個 Metaspace 的相關參數都是代表的什么配置。KiT28資訊網——每日最新資訊28at.com

Metaspace

  • -XX:MetaspaceSize,初始空間大小,達到該值就會觸發垃圾收集進行類型卸載,同時GC會對該值進行調整:如果釋放了大量的空間,就適當降低該值;如果釋放了很少的空間,那么在不超過MaxMetaspaceSize時,適當提高該值。
  • -XX:MaxMetaspaceSize,最大空間,默認是沒有限制的。如果沒有使用該參數來設置類的元數據的大小,其最大可利用空間是整個系統內存的可用空間。JVM也可以增加本地內存空間來滿足類元數據信息的存儲。但是如果沒有設置最大值,則可能存在bug導致Metaspace的空間在不停的擴展,會導致機器的內存不足;進而可能出現swap內存被耗盡;最終導致進程直接被系統直接kill掉。 如果設置了該參數,當Metaspace剩余空間不足,會拋出:java.lang.OutOfMemoryError: Metaspace space
  • -XX:MinMetaspaceFreeRatio,在GC之后,最小的Metaspace剩余空間容量的百分比,減少為分配空間所導致的垃圾收集
  • -XX:MaxMetaspaceFreeRatio,在GC之后,最大的Metaspace剩余空間容量的百分比,減少為釋放空間所導致的垃圾收集

本文鏈接:http://m.www897cc.com/showinfo-26-11818-0.htmlJDK為什么廢棄永久代,而引入元空間

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Postman腳本批量轉接口自動化用例

下一篇: DevOps優秀實踐之用戶與權限

標簽:
  • 熱門焦點
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
国产精品最新自拍| 美日韩丰满少妇在线观看| 亚洲精品中文字| 亚洲九九九在线观看| 亚洲午夜国产成人av电影男同| 亚洲在线中文字幕| 久久精品欧美日韩| 欧美大尺度在线观看| 欧美视频中文在线看| 国产欧美一区二区色老头| 伊甸园精品99久久久久久| 亚洲精品一级| 亚洲欧美一级二级三级| 久久婷婷亚洲| 欧美日韩在线一区二区三区| 国产乱肥老妇国产一区二 | 国产精品v欧美精品∨日韩| 国产目拍亚洲精品99久久精品| 精品动漫一区二区| 亚洲婷婷在线| 免费一级欧美片在线观看| 国产精品久久久久aaaa九色| 一区二区亚洲精品国产| 亚洲图片在区色| 老司机成人网| 国产精品久久午夜| 亚洲片国产一区一级在线观看| 亚洲欧美日韩一区二区三区在线观看| 美女黄网久久| 国产日韩欧美精品| 亚洲色图制服丝袜| 美女啪啪无遮挡免费久久网站| 国产精品久久久久影院亚瑟| 亚洲国产综合视频在线观看| 亚洲女同精品视频| 欧美激情一区二区三区四区| 国产亚洲欧美色| 一本色道久久88精品综合| 久久久久国产精品一区| 国产精品xxxav免费视频| 亚洲国产视频直播| 久久精品观看| 国产精品一区二区三区乱码| 99精品国产高清一区二区| 久久亚洲精品一区| 国产日韩一区二区三区在线| 一区二区三区不卡视频在线观看 | 欧美色偷偷大香| 亚洲成色777777女色窝| 欧美亚洲在线视频| 国产精品www.| 一本色道88久久加勒比精品| 欧美jizzhd精品欧美喷水| 国内精品国产成人| 午夜精品电影| 国产精品都在这里| 一本色道久久88精品综合| 男女视频一区二区| 影音先锋一区| 久久精品在线免费观看| 国产欧美一区二区白浆黑人| 亚洲素人在线| 欧美日韩亚洲国产精品| 91久久精品一区二区三区| 久久亚洲捆绑美女| 国产午夜精品在线观看| 亚洲女同性videos| 国产精品v片在线观看不卡| 日韩视频一区二区三区在线播放免费观看 | 亚洲性图久久| 欧美日韩在线播放一区| 亚洲精品美女久久7777777| 免费在线看一区| 亚洲高清在线观看| 另类专区欧美制服同性| 狠狠色狠狠色综合人人| 久久九九国产精品| 韩国成人精品a∨在线观看| 欧美一区二区三区免费观看视频| 国产精品久久久久一区二区三区| 亚洲一区二区精品在线观看| 欧美午夜精品久久久久久久| 一区二区三区鲁丝不卡| 欧美色视频日本高清在线观看| 日韩系列在线| 欧美日韩视频一区二区| 一区二区三区视频在线| 欧美午夜性色大片在线观看| 亚洲一级黄色| 国产伦精品一区二区三区免费| 欧美一区二区三区日韩视频| 国产亚洲综合在线| 久久免费视频网站| 亚洲国产精品久久久久婷婷884| 你懂的视频一区二区| 亚洲精品久久7777| 欧美日韩国产限制| 亚洲伊人久久综合| 国产亚洲第一区| 看片网站欧美日韩| 亚洲伦理在线观看| 国产精品分类| 欧美一区二区三区四区在线观看 | 久久久夜精品| 亚洲激情视频| 欧美日韩国产高清视频| 亚洲在线一区二区| 国产亚洲一区二区三区在线播放 | 国产精品区一区二区三| 欧美中文字幕在线| 亚洲大胆女人| 欧美日韩1区2区3区| 亚洲一区二区三区中文字幕| 国产欧美日本一区视频| 久久人人97超碰人人澡爱香蕉| 亚洲国产99精品国自产| 欧美日韩国产在线观看| 亚洲欧洲av一区二区| 伊人天天综合| 欧美激情中文字幕乱码免费| 亚洲一二三区在线观看| 国内精品模特av私拍在线观看| 免费一级欧美在线大片| 一区二区三区高清在线观看| 国产欧美日韩一区二区三区在线观看| 久久男女视频| 一区二区三区|亚洲午夜| 国内精品久久久久久| 欧美激情在线| 欧美一区1区三区3区公司| 亚洲福利在线看| 国产精品久久久久久福利一牛影视| 久久精精品视频| 日韩视频中午一区| 国产精品专区h在线观看| 欧美 日韩 国产一区二区在线视频 | 国产日韩欧美一区二区| 欧美大片一区| 欧美夜福利tv在线| 亚洲人成人一区二区在线观看| 国产精品女人毛片| 欧美激情中文不卡| 久久精品国产精品亚洲综合 | 久久综合九色九九| 亚洲少妇一区| 亚洲国产精品久久久久婷婷884 | 国产精品一区二区久激情瑜伽| 可以看av的网站久久看| 亚洲欧美日本伦理| 亚洲欧洲在线观看| 国产一区二区三区在线观看精品| 欧美美女喷水视频| 久久久久九九视频| 亚洲伊人伊色伊影伊综合网| 亚洲国产精品99久久久久久久久| 国产精品婷婷午夜在线观看| 欧美顶级少妇做爰| 久久成人18免费网站| 一区二区三区回区在观看免费视频 | 国产一区在线看| 欧美日精品一区视频| 鲁鲁狠狠狠7777一区二区| 亚洲欧美精品在线观看| 亚洲美女在线观看| 亚洲大片av| 国产在线拍偷自揄拍精品| 欧美午夜宅男影院在线观看| 欧美 日韩 国产一区二区在线视频| 性欧美大战久久久久久久久| 一区二区电影免费在线观看| 亚洲国产精品va在线看黑人动漫 | 亚洲第一二三四五区| 国产日韩精品一区| 国产精品三区www17con| 欧美日韩国产在线观看| 欧美国产日本高清在线| 久久在线免费| 久久精品视频免费播放| 午夜精品久久久久久久白皮肤 | 亚洲欧美成人一区二区三区| 亚洲精品在线三区| 亚洲欧洲另类国产综合| 亚洲成人自拍视频| 在线免费观看视频一区| 狠狠入ady亚洲精品| 国产欧美在线观看| 国产精品一区二区久久精品| 欧美天天视频| 欧美日韩一卡二卡| 欧美日本乱大交xxxxx| 欧美黄污视频| 免费日韩成人| 免播放器亚洲| 葵司免费一区二区三区四区五区| 久久久91精品国产一区二区精品| 欧美亚洲在线观看| 欧美中文字幕不卡| 欧美在线亚洲在线| 欧美在线观看日本一区| 欧美在线观看视频在线 | 久久大综合网| 欧美一区在线视频| 欧美与黑人午夜性猛交久久久| 欧美一区二区三区视频免费播放 |