高併發時,JVM調優

現象:在分佈式部署時,單個服務的虛擬機不斷變大,直到內存被用的所剩無幾,然後出現各種各樣的異常


解決思路:優化虛擬機堆的空間大小,根據實際物理內存的大小進行比例分配,並且,堆不進行自動擴展。然後使用ParNew+CMS進行垃圾回收,在多線程高併發的情況下,表現很好


export CATALINA_OPTS="$CATALINA_OPTS -Xms3000m"                  //堆初始值

export CATALINA_OPTS="$CATALINA_OPTS -Xmx3000m"                  //堆最大值
export CATALINA_OPTS="$CATALINA_OPTS -XX:MaxPermSize=256m"       //Java虛擬機永久代大小最大值
export CATALINA_OPTS="$CATALINA_OPTS -Xmn512m"                   //堆最小值
export CATALINE_OPTS="$CATALINA_OPTS -XX:+UseConcMarkSweepGC"        //使用CMS垃圾收集器
export CATALINA_OPTS="$CATALINA_OPTS -XX:+UseParNewGC"           //使用parallel New垃圾收集器
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章