JVM調(diào)優(yōu)參數(shù)
1.設(shè)置持久代的大小
-XX:MaxPermSize= 16m??存放靜態(tài)文件,如今Java類、方法
典型的分代垃圾回收算法配置:java -Xmx3550m -Xms3550m -Xmn2g –Xss128k
-Xmx3550m JVM最大可用內(nèi)存3550M
-Xms3550m JVM初始內(nèi)存大小,可以和最大內(nèi)存大小相同,避免了每次垃圾回收后重新分配內(nèi)存
-Xmn2g 設(shè)置年輕代大小為2G。整個(gè)堆大小=年輕代大小 + 年老代大小 + 持久代大小。持久代一般固定大小為64m,所以增大年輕代后,將會(huì)減小年老代大小。此值對(duì)系統(tǒng)性能影響較大,Sun官方推薦配置為整個(gè)堆的3/8。
-Xss128k 設(shè)置每個(gè)線程的堆棧大小。JDK5.0以后每個(gè)線程堆棧大小為1M,以前每個(gè)線程堆棧大小為256K。根據(jù)應(yīng)用的線程所需內(nèi)存大小進(jìn)行調(diào)整。在相同物理內(nèi)存下,減小這個(gè)值能生成更多的線程。但是操作系統(tǒng)對(duì)一個(gè)進(jìn)程內(nèi)的線程數(shù)還是有限制的,不能無限生成,經(jīng)驗(yàn)值在3000~5000左右。