无码色偷偷亚洲国内自拍_国产男女性潮高清免费网站_69SEX久久精品国产麻豆_日本高清在线一区二区三区

千鋒(feng)教(jiao)育-做有情(qing)懷、有良心、有品質的職業教(jiao)育機構

當前位置:首頁  >  IT面試題  >  Java面試題  >  正文

JVM調優參數有哪些?

來源:千鋒教育
作者:wjy
關鍵詞: 北京 成都
2022-09-26
分享

  1. JVM堆(dui)設(she)(she)置參數 針(zhen)對JVM堆(dui)的(de)設(she)(she)置,一般(ban)可以通過-Xms -Xmx限定其最(zui)小、最(zui)大值(zhi),為(wei)了防止垃(la)圾(ji)收集器在最(zui)小、最(zui)大之間收縮堆(dui)而產(chan)生額外的(de)時(shi)間,通常把最(zui)大、最(zui)小設(she)(she)置為(wei)相同(tong)的(de)值(zhi);

  2. 年(nian)輕代(dai)和(he)年(nian)老代(dai)將根據默認的比例(1:2)分配堆內存 可(ke)以(yi)(yi)通(tong)過調整二(er)者(zhe)之間的比率NewRadio來調整二(er)者(zhe)之間的大(da)(da)小(xiao),也可(ke)以(yi)(yi)針對(dui)回收代(dai)。比如年(nian)輕代(dai),通(tong)過 -XX:newSize -XX:MaxNewSize來設置其(qi)絕(jue)對(dui)大(da)(da)小(xiao)。同樣,為了防(fang)止年(nian)輕代(dai)的堆收縮,我們通(tong)常會把-XX:newSize -XX:MaxNewSize設置為同樣大(da)(da)小(xiao)。

  3. 年輕代和年老代值大小

  3.1 更(geng)大(da)的(de)年(nian)輕代(dai)必然導致更(geng)小的(de)年(nian)老(lao)代(dai),大(da)的(de)年(nian)輕代(dai)會(hui)延長普(pu)通(tong)GC的(de)周期,但會(hui)增加每(mei)次GC的(de)時(shi)間;小的(de)年(nian)老(lao)代(dai)會(hui)導致更(geng)頻(pin)繁的(de)Full GC。

  3.2 更(geng)小的(de)(de)年(nian)(nian)輕代(dai)(dai)必(bi)然導(dao)致更(geng)大(da)年(nian)(nian)老代(dai)(dai),小的(de)(de)年(nian)(nian)輕代(dai)(dai)會導(dao)致普通GC很頻繁,但(dan)每次的(de)(de)GC時間會更(geng)短;大(da)的(de)(de)年(nian)(nian)老代(dai)(dai)會減少Full GC的(de)(de)頻率。 如何選擇應(ying)該依賴(lai)應(ying)用程序對(dui)(dui)(dui)象(xiang)生命周(zhou)期的(de)(de)分布情況: 如果應(ying)用存(cun)在大(da)量的(de)(de)臨時對(dui)(dui)(dui)象(xiang),應(ying)該選擇更(geng)大(da)的(de)(de)年(nian)(nian)輕代(dai)(dai);如果存(cun)在相(xiang)對(dui)(dui)(dui)較多(duo)的(de)(de)持久對(dui)(dui)(dui)象(xiang),年(nian)(nian)老代(dai)(dai)應(ying)該適當增大(da)。但(dan)很多(duo)應(ying)用都沒(mei)有這樣明(ming)顯的(de)(de)特性。

  3.3 在抉擇(ze)時應該根 據以(yi)下兩(liang)點:

  (1). 本著Full GC盡量少的(de)原則,讓年老代盡量緩存常用對象,JVM的(de)默認比例1:2也(ye)是這個道理 。

  (2). 通過觀察應用一段時間,看(kan)其他在(zai)峰值時年老(lao)代(dai)會(hui)占(zhan)多少(shao)內存,在(zai)不(bu)影響Full GC的前提下,根(gen)據(ju)實(shi)際情況加(jia)大年輕代(dai),比(bi)如可以把比(bi)例控制(zhi)在(zai)1:1。但應該給年老(lao)代(dai)至少(shao)預留1/3的增長空間。

  4. 在配(pei)置較(jiao)好的機器上(比(bi)如多(duo)核、大內存),可(ke)以為年老代(dai)選擇并(bing)行收集(ji)算法:-XX:+UseParallelOldGC 。

  5. 線(xian)(xian)程(cheng)堆棧的設置 每個線(xian)(xian)程(cheng)默(mo)認會開啟1M的堆棧,用(yong)于存放棧幀、調用(yong)參數、局(ju)部變量等,對大多數應用(yong)而(er)言這個默(mo)認值太了(le),一般256K就足(zu)用(yong)。 理論上(shang),在內存不變的情況下,減少每個線(xian)(xian)程(cheng)的堆棧,可以產(chan)生(sheng)更多的線(xian)(xian)程(cheng),但這實際上(shang)還受限(xian)于操作(zuo)系統。

聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。

下一篇

相關推薦

  • JVM調優參數有哪些? 1. JVM堆設置參數 針對JVM堆的設置,一般可以通過-Xms -Xmx限定其最小、最大值,為了防止垃圾收集器在最小、最大之間收縮堆而產生額外的時間,通常把最大、最小設置為相同的值;
  • 存儲過程如何進行優化? 存儲過程是一組為了完成特定功能的SQL語句集,存儲在數據庫中,經過次編譯后再次調用不需要再次編譯,用戶通過指定存儲過程的名字并給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是數據庫中的一個重要對象。
  • 常見的索引原則有哪些? 1. 選擇唯一性索引 唯一性索引的值是唯一的,可以更快速的通過該索引來確定某條記錄。2. 為經常需要排序、分組和聯合操作的字段建立索引:3. 為常作為查詢條件的字段建立索引。
  • 你用過單點登錄嗎?是如何實現的? 父應用提供一個GET方式的登錄接口A(此時的父應用接口固定,攻擊者無法去偽造),用戶通過子應用重定向連接的方式訪問這個接口,如果用戶還沒有登錄,則返回一個登錄頁面,用戶輸入賬號密碼進行登錄,如果用戶已經登錄了,則生成加密的token,并且重定向到子應用提供的驗證token...
  • 你熟悉的測試用例設計方法都有哪些? 你熟悉的測試用例設計方法都有哪些?請分別以具體的例子來說明這些方法在測試用例設計工作中的應用。 答:有黑盒和白盒兩種測試種類,黑盒有等價類劃分法,邊界分析法,因果圖法和錯誤猜測法。白盒有邏輯覆蓋法,循環測試路徑選擇,基本路徑測試。
  • 描述一下你所使用的分支策略? 功能分支(Feature branching):要素分支模型將特定要素的所有更改保留在分支內。當通過自動化測試對功能進行全面測試和驗證時,該分支將合并到主服務器中。