java虛擬機器調優常識

來源:互聯網
上載者:User

jvm的調整沒什麼技巧,只有一些原則,要根據自己應用的特點來設定調優的目標,這裡收集了一些內容,權當記錄

 

Java heap (Xmx, Xms) 和java進程的heap是兩回事情

java進程的heap包含:

   Java Heap

   Permanent Generation

   Thread stacks

   Native code

   Directly allocated memory

   Code generation

   Garbage collection

   TCP buffers

因此我們在設定,jvm參數的時候得小心一點,一般我們會設定java heap 和 perm gen,結合作業系統記憶體的大小和應用特點,選取一個合理的值。-Xms/-Xmxjava heap並不是越大越好,對他的一般最佳化原則是夠用的情況下,儘可能的小,因為太大的話會浪費記憶體,同時影響GC的效率-XX:NewSize/-XX:NewRatio一般設定為java heap的25%-33%,太大或者太小都會影響GC,要根據應用的特點,對象生命長短周期的比例來調整GC相關調整的目標:* 短生命週期的對象不要進入Old區* 短生命週期的對象在minor GC的時候幹掉* 長生命週期的對象要放到Old區* 長生命週期的對象可以被Full GC清理掉,但是Full GC要調整到盡量少發生不管採用什麼演算法,GC總是會導致應用暫停,這個時間長短從毫秒到秒之間不等,因此會影響應用的相應時間,多長的停頓在接受範圍內取決於應用的特徵,可以通過設定GC停頓的時間來調整(注意只是期望的時間,而不是絕對)-XX:MaxGCPauseMillis -XX:MaxGCMinorPauseMillis  ,一般設定比較短的停頓時間會導致相對較頻繁的GC,根據應用的情況來調整

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.