āđāļāļĒāđāļŦāļĄ...āļี่āļุāļāļāļĢั้āļ āđāļ§āļĨāļēāļี่āđāļĢāļēāđāļีāļĒāļ Code āļāļ NetBean āļŦāļĢืāļ Eclipse āđāļĨ้āļ§āļ้āļēāļāđāđāđāđāđ āļŦāļĢืāļ Deploy āđāļĨ้āļ§āļ้āļēāļāđāļĨ้āļ§ Dump āļึ้āļāļัāļ§āđāļāļāļĄāļēāđāļĨāļĒāļĒ... āđāļĨ้āļ§āļ็āļ้āļēāļāļ§่āļēāđāļāļĢื่āļāļāđāļ่āļēāļ้āļēāļ āļāļēāļāļ้āļēāļ āļ้āļāļāđāļāđāļิ่āļĄ Ram āđāļŦ้āđāļĒāļāļ°āļึ้āļ
āļāļēāļāļāļēāļĢāļี่āļ๊āļāļāđāļ้āđāļ้āļēāđāļāļ่āļēāļāļāļēāļĄ Blog āļ่āļēāļāđ āđāļāļēāļŠāļĢุāļāļŠāļēāđāļŦāļุāđāļ§้ āļัāļāļี้...
1. āļัāļāļŦāļēāļāļēāļāļ่āļ§āļ Deploy āđāļĨāļ° Undeploy
-āļ่āļ§āļ runtime āđāļ่āļĨāļ° application āļāļ°āļูāļāđāļŦāļĨāļāļ่āļēāļāļāļēāļ application classloader āđāļāļĒāļāļģāļŦāļ้āļēāļี่ āđāļŦāļĨāļāđāļāļĨ์ .class āļāļēāļ jar files āđāļĨāļ°āđāļĄื่āļ undeploy application āļั้āļ classloader āļĄัāļāļāļ°āļāļģāļāļēāļĢāļĨāļ°āļิ้āļ class āļี่āđāļ้āļĄีāļāļēāļĢāđāļŦāļĨāļāđāļ้āļēāļĄāļē āđāļĨ้āļ§āļāļ°āļูāļāļัāļāļāļēāļĢāđāļāļĒ garbage collector āļ่āļāļĄāļēāđāļāļ āļēāļĒāļŦāļĨัāļāđāļื่āļāļืāļāļāļĢัāļāļĒāļēāļāļĢāļŠู่āļĢāļ°āļāļ
āđāļĨāļ°āļāļēāļāđāļŦāļุāļāļēāļĢāļ์āļāļĢāļāļี้āđāļŦāļĨāļ°....
-āļāļēāļāļāļĢั้āļ classloader āļāļēāļāļĒัāļāļĄีāļāļēāļĢāđāļ็āļāļāļēāļāļŠิ่āļāļี่āļูāļāđāļŦāļĨāļāđāļ้āļēāļĄāļēāđāļ§้āļāļĒู่ āđāļĨāļ°āļāļāļ้āļāļāļĄัāļāļāļēāļ garbage collector āđāļื่āļāļāļāļēāļāļ§่āļēāļĄัāļāļāļēāļāļāļ°āļูāļāđāļ้āļāļēāļāļāļĒู่ āļāļģāđāļŦ้ garbage collector āđāļĄ่āļŠāļēāļĄāļēāļĢāļāđāļ้āļēāļĄāļēāļัāļāļāļēāļĢāđāļ้ āļึāļāđāļ็āļāđāļŦāļุāļāļģāđāļŦ้āđāļิāļāļ้āļāļิāļāļāļĨāļēāļ java.lang.OutOfMemoryError: PermGen space āđāļ้
2. āļัāļāļŦāļēāļāļēāļāļāļēāļĢāļัāļāļāļēāļĢ Memory āđāļ VM
-āđāļิāļĄāļี memory āļี่āļĄีāļāļĒู่āđāļ Virtual Machine (VM) āļāļ°āļูāļāļŦāļēāļĢāđāļāđāļ้āļāļēāļāđāļāļĒ number of region āļึ่āļāļŦāļึ่āļāđāļāļั้āļ āļืāļ region āļี่āđāļ็āļ PermGen space (permanent generation space) āļึ่āļāđāļ็āļāļื้āļāļี่āļāļāļ memory āļŠāļģāļŦāļĢัāļāđāļŦāļĨāļ class file āđāļ้āļēāļĄāļē
-āļŠāļģāļŦāļĢัāļ size of memory region āļั้āļ āļāļ°āļĄีāļāļēāļĢāļāļģāļŦāļāļāđāļ§้āļāļĒ่āļēāļāļāļāļี่āđāļāļĒāđāļĄ่āļĄีāļāļēāļĢāđāļāļĨี่āļĒāļāđāļāļĨāļāđāļĄื่āļ VM āļāļģāļāļēāļāļāļĒู่ āđāļĢāļēāļŠāļēāļĄāļēāļĢāļāļāļģāļŦāļāļ size of region āđāļāļĒ -XX:MaxPermSize āđāļ่āļ -XX:MaxPermSize = 256m āļŦāļĄāļēāļĒāļāļ§āļēāļĄāļ§่āļē āđāļĢāļēāļāļģāļŦāļāļ size of memory region āļŠูāļāļŠุāļāļี่ 256 MB āđāļāļĒāļŦāļēāļāđāļĢāļēāđāļĄ่āļĄีāļāļēāļĢāļāļģāļŦāļāļ āđāļāļĒāļื้āļāļāļēāļāđāļĨ้āļ§āļāļēāļāļāļ°āļĄีāļāļēāļĢāļāļģāļŦāļāļāđāļ§้āļี่ 64 MB
-āđāļิāļĄāļี memory āļี่āļĄีāļāļĒู่āđāļ Virtual Machine (VM) āļāļ°āļูāļāļŦāļēāļĢāđāļāđāļ้āļāļēāļāđāļāļĒ number of region āļึ่āļāļŦāļึ่āļāđāļāļั้āļ āļืāļ region āļี่āđāļ็āļ PermGen space (permanent generation space) āļึ่āļāđāļ็āļāļื้āļāļี่āļāļāļ memory āļŠāļģāļŦāļĢัāļāđāļŦāļĨāļ class file āđāļ้āļēāļĄāļē
-āļŠāļģāļŦāļĢัāļ size of memory region āļั้āļ āļāļ°āļĄีāļāļēāļĢāļāļģāļŦāļāļāđāļ§้āļāļĒ่āļēāļāļāļāļี่āđāļāļĒāđāļĄ่āļĄีāļāļēāļĢāđāļāļĨี่āļĒāļāđāļāļĨāļāđāļĄื่āļ VM āļāļģāļāļēāļāļāļĒู่ āđāļĢāļēāļŠāļēāļĄāļēāļĢāļāļāļģāļŦāļāļ size of region āđāļāļĒ -XX:MaxPermSize āđāļ่āļ -XX:MaxPermSize = 256m āļŦāļĄāļēāļĒāļāļ§āļēāļĄāļ§่āļē āđāļĢāļēāļāļģāļŦāļāļ size of memory region āļŠูāļāļŠุāļāļี่ 256 MB āđāļāļĒāļŦāļēāļāđāļĢāļēāđāļĄ่āļĄีāļāļēāļĢāļāļģāļŦāļāļ āđāļāļĒāļื้āļāļāļēāļāđāļĨ้āļ§āļāļēāļāļāļ°āļĄีāļāļēāļĢāļāļģāļŦāļāļāđāļ§้āļี่ 64 MB
3. āļัāļāļŦāļēāļāļēāļ garbage collector
-āđāļื่āļāļāļāļēāļ garbage collector āđāļĄ่āļŠāļēāļĄāļēāļĢāļāļืāļāļāļĢัāļāļĒāļēāļāļĢāļŠู่āļĢāļ°āļāļāđāļ้
āļ§ิāļีāļāļēāļĢāļี่ garbage collector āļัāļāļāļēāļĢ... āļืāļ āļ้āļāļāđāļ็āļ classes āđāļŦāļĄ่āļี่āļāļģāļĨัāļāđāļŦāļĨāļāđāļ้āļēāļĄāļēāđāļ memory āđāļ็āļāđāļŦāļุāļāļģāđāļŦ้ VM āļั้āļāđāļิāļāļāļēāļĢāļāļēāļāđāļāļĨāļ space āđāļ memory region āļึāļāļ้āļāļāļĄี JAVA heap āđāļ§้āđāļื่āļāļ่āļ§āļĒāļัāļāļŠāļĢāļĢ memory āđāļŦ้āđāļีāļĒāļāļāļāļ่āļ size of Object āļี่āļāļēāļĻัāļĒāļāļĒู่āļāļ process heap
āļัāļāļŦāļēāļี่āđāļิāļāļāļēāļĄāļĄāļē āļ็āļืāļ... āđāļิāļ Object āļั้āļāļāļāļāļāļēāļ process āđāļĨāļ°āļืāļ memory āļŠู่āļĢāļ°āļāļ
-āđāļื่āļāļāļāļēāļāļ§่āļē JAVA application āļāļ°āļāļģāļāļēāļāļāļēāļĄ process āđāļี่āļĒāļ§āđ āļāļāļāđāļ่āļĨāļ° process āļี่āļāļģāļāļēāļāļāļĒู่ āđāļāļĒāļāļ°āđāļĄ่āļĄีāļāļēāļĢāđāļāļĢ์ memory āļĢ่āļ§āļĄāļัāļāļĢāļ°āļŦāļ§่āļēāļ process āļึ่āļāđāļ่āļĨāļ° process āļāļ°āļูāļāļัāļāļŠāļĢāļĢ memory āđāļŦ้āđāļ่āļĨāļ° process āđāļāļāđāļāļĒ JVM āļี่āđāļĢีāļĒāļāļ§่āļē process heap
āđāļāļĢāļēāļ°āļāļ°āļั้āļ... āļāļēāļĢāļั้āļāļ่āļēāļāļēāļĢāļēāļĄิāđāļāļāļĢ์ –Xmx āļั้āļāđāļĄ่āđāļ้āļ่āļ§āļĒāļāļ°āđāļĢāļĄāļēāļ āđāļāļĒāļāļēāļĢāļēāļĄิāđāļāļāļĢ์āļัāļāļāļĨ่āļēāļ§ āđāļ็āļāđāļีāļĒāļāļāļēāļĢāļāļģāļŦāļāļ size of total heap āđāļ่āļēāļั้āļ āđāļĨāļ°āđāļĄ่āđāļ้āļŠ่āļāļāļĨāļāļĢāļ°āļāļāļāļ°āđāļĢāļ่āļ size of PermGen region āđāļĨāļĒ
-āđāļื่āļāļāļāļēāļ garbage collector āđāļĄ่āļŠāļēāļĄāļēāļĢāļāļืāļāļāļĢัāļāļĒāļēāļāļĢāļŠู่āļĢāļ°āļāļāđāļ้
āļ§ิāļีāļāļēāļĢāļี่ garbage collector āļัāļāļāļēāļĢ... āļืāļ āļ้āļāļāđāļ็āļ classes āđāļŦāļĄ่āļี่āļāļģāļĨัāļāđāļŦāļĨāļāđāļ้āļēāļĄāļēāđāļ memory āđāļ็āļāđāļŦāļุāļāļģāđāļŦ้ VM āļั้āļāđāļิāļāļāļēāļĢāļāļēāļāđāļāļĨāļ space āđāļ memory region āļึāļāļ้āļāļāļĄี JAVA heap āđāļ§้āđāļื่āļāļ่āļ§āļĒāļัāļāļŠāļĢāļĢ memory āđāļŦ้āđāļีāļĒāļāļāļāļ่āļ size of Object āļี่āļāļēāļĻัāļĒāļāļĒู่āļāļ process heap
āļัāļāļŦāļēāļี่āđāļิāļāļāļēāļĄāļĄāļē āļ็āļืāļ... āđāļิāļ Object āļั้āļāļāļāļāļāļēāļ process āđāļĨāļ°āļืāļ memory āļŠู่āļĢāļ°āļāļ
-āđāļื่āļāļāļāļēāļāļ§่āļē JAVA application āļāļ°āļāļģāļāļēāļāļāļēāļĄ process āđāļี่āļĒāļ§āđ āļāļāļāđāļ่āļĨāļ° process āļี่āļāļģāļāļēāļāļāļĒู่ āđāļāļĒāļāļ°āđāļĄ่āļĄีāļāļēāļĢāđāļāļĢ์ memory āļĢ่āļ§āļĄāļัāļāļĢāļ°āļŦāļ§่āļēāļ process āļึ่āļāđāļ่āļĨāļ° process āļāļ°āļูāļāļัāļāļŠāļĢāļĢ memory āđāļŦ้āđāļ่āļĨāļ° process āđāļāļāđāļāļĒ JVM āļี่āđāļĢีāļĒāļāļ§่āļē process heap
āđāļāļĢāļēāļ°āļāļ°āļั้āļ... āļāļēāļĢāļั้āļāļ่āļēāļāļēāļĢāļēāļĄิāđāļāļāļĢ์ –Xmx āļั้āļāđāļĄ่āđāļ้āļ่āļ§āļĒāļāļ°āđāļĢāļĄāļēāļ āđāļāļĒāļāļēāļĢāļēāļĄิāđāļāļāļĢ์āļัāļāļāļĨ่āļēāļ§ āđāļ็āļāđāļีāļĒāļāļāļēāļĢāļāļģāļŦāļāļ size of total heap āđāļ่āļēāļั้āļ āđāļĨāļ°āđāļĄ่āđāļ้āļŠ่āļāļāļĨāļāļĢāļ°āļāļāļāļ°āđāļĢāļ่āļ size of PermGen region āđāļĨāļĒ
āļŦāļĨัāļāđ āļืāļ ...
-PermSize āđāļĄ่āđāļีāļĒāļāļāļāļ่āļāļāļēāļĢāđāļŦāļĨāļ class file āļĄāļēāđāļ็āļāđāļ§้āđāļ memory PermGen space
āļŠิ่āļāļี่āļ้āļāļāļāļģ āļืāļ ...
-āļāļģāļŦāļāļāļ่āļē PermGen space āđāļĨāļ° heap size āđāļŦ้āđāļีāļĒāļāļāļāļ่āļāļāļ§āļēāļĄāļ้āļāļāļāļēāļĢāđāļ้āļāļēāļ
āđāļāļĒāļั่āļ§āđāļāđāļĢāļēāļāļ°āļāļģāļŦāļāļ Environment Variables āļāļēāļ JAVA_OPTS āļึ่āļāđāļ็āļ variable name āđāļ§้āļāļģāļŦāļāļāļ่āļēāļ่āļēāļāđ āļัāļāļี้
-PermSize āđāļĄ่āđāļีāļĒāļāļāļāļ่āļāļāļēāļĢāđāļŦāļĨāļ class file āļĄāļēāđāļ็āļāđāļ§้āđāļ memory PermGen space
āđāļāļĒāļั่āļ§āđāļāđāļĢāļēāļāļ°āļāļģāļŦāļāļ Environment Variables āļāļēāļ JAVA_OPTS āļึ่āļāđāļ็āļ variable name āđāļ§้āļāļģāļŦāļāļāļ่āļēāļ่āļēāļāđ āļัāļāļี้
JAVA_OPTS="–Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=512m "
–Xms (initial java total heap size) āđāļāļāļĢāļีāļี่āđāļิāļāļัāļāļŦāļēāļāļģāļāļēāļāļ้āļē
-Xmx : maximum java total heap size
-XX:PermSize : initial permanent generation space
-XX:MaxPermSize : maximum permanent generation space
āļāļāļāļāļēāļāļี้ āļĒัāļāļĄีāļāļēāļĢāļēāļĄิāđāļāļāļĢ์āļัāļ§āļื่āļāļี่āļ่āļēāļŠāļāđāļ āđāļ่āļ
-Xss128m āđāļ็āļāļāļēāļĢāļāļģāļŦāļāļ stack size āđāļ่āļēāļัāļ 128MB
-āđāļāđāļ่āļĨāļ° thread āđāļ VM āļั้āļ āļāļ°āļĄี stack āļāļĒู่ āđāļāļĒ stack size āļāļ°āļāļģāļัāļāļāļģāļāļ§āļāļāļāļ thread āđāļ§้āļāļēāļĄāļี่āđāļĢāļēāļāļ°āļŠāļēāļĄāļēāļĢāļāļĄีāđāļ้
āļัāļāļั้āļ āļ้āļēāļāļģāļāļ§āļāļāļāļ thread > stack size āļāļ°āļāļģāđāļŦ้āļāļēāļāđāļāļĨāļ memory āļāļēāļĄāļี่āđāļ่āļĨāļ° thread āļĄัāļāļ้āļāļāļāļēāļĢ
āļัāļāļั้āļ āļ้āļēāļāļģāļāļ§āļāļāļāļ thread > stack size āļāļ°āļāļģāđāļŦ้āļāļēāļāđāļāļĨāļ memory āļāļēāļĄāļี่āđāļ่āļĨāļ° thread āļĄัāļāļ้āļāļāļāļēāļĢ
-Xmn100m āđāļ็āļāļāļēāļĢāļāļģāļŦāļāļ size of the heap āļŠāļģāļŦāļĢัāļ young generation āđāļ่āļēāļัāļ 100MB
-memory āļี่āļูāļāđāļ้āļāļēāļāđāļāļĒ JVM āļāļ°āļูāļāļัāļāđāļ็āļ generation
-āļั้āļāļี่ 1 : generation āļāļ°āđāļ่āļāļāļēāļĄāļ่āļ§āļāđāļ§āļĨāļēāļี่ memory pool āļั้āļāđāļ้āļืāļāļāļĢāļāļ object āđāļāļ่āļ§āļāđāļ§āļĨāļēāđāļāļāļ่āļēāļāļัāļāļāļāļāđāļ āđāļāļĒ object āđāļŦāļĄ่āļี่āļูāļāđāļĢีāļĒāļāđāļ้āļēāļĄāļēāđāļ้āļāļēāļāļั้āļāļāļ°āļĄีāļāļēāļĢāļāļāļ memory āđāļื่āļāđāļ้āļāļēāļāđāļ young generation region (āļāļēāļāļāļĢั้āļāļāļēāļāļāļ°āđāļĢีāļĒāļāļ§่āļē new generation region) āđāļĄื่āļāđāļĄ่āđāļ้āđāļ้āļāļēāļāļāļ°āļูāļāļāļģāđāļāđāļ็āļāđāļ§้āļี่ memory old generation region
-āļั้āļāļี่ 2 : āļŦāļēāļ memory young generation region āđāļ็āļĄāđāļĨ้āļ§ garbage collector āļāļ°āļāļģāļāļēāļĢāđāļĢีāļĒāļāļืāļāļŦāļ่āļ§āļĒāļāļģāļŠ่āļ§āļāļŦāļึ่āļ āļี่āđāļĄ่āđāļ้āļĄีāļāļēāļĢāđāļ้āļāļēāļāđāļĨ้āļ§ āļāļēāļ old generation region āđāļ่āļāđāļāđāļŦ้āļัāļ young generation region
āđāļิāļĄāļีāļั้āļ āļāļ°āļĄีāļāļēāļĢāđāļ่āļ generation āļāļāļ total heap size āļ่āļāļĄāļēāđāļ้āļĄีāļāļēāļĢāđāļ่āļ old generation āļāļāļāļĄāļēāđāļ็āļ tenured generation āļŦāļĨัāļāļāļēāļāļี่ generational memory system āļั้āļāđāļ้āļāļģāļāļēāļĢāļŦāļēāļĢ heap āđāļ้āļēāđāļ āđāļ sized partitions āļี่āļูāļāđāļ่āļāđāļ§้āļāļĒ่āļēāļāļĢāļ°āļĄัāļāļĢāļ°āļ§ัāļāļāļ°āļูāļāđāļĢีāļĒāļāļ§่āļē generation
-āļั้āļāļี่ 1 : generation āļāļ°āđāļ่āļāļāļēāļĄāļ่āļ§āļāđāļ§āļĨāļēāļี่ memory pool āļั้āļāđāļ้āļืāļāļāļĢāļāļ object āđāļāļ่āļ§āļāđāļ§āļĨāļēāđāļāļāļ่āļēāļāļัāļāļāļāļāđāļ āđāļāļĒ object āđāļŦāļĄ่āļี่āļูāļāđāļĢีāļĒāļāđāļ้āļēāļĄāļēāđāļ้āļāļēāļāļั้āļāļāļ°āļĄีāļāļēāļĢāļāļāļ memory āđāļื่āļāđāļ้āļāļēāļāđāļ young generation region (āļāļēāļāļāļĢั้āļāļāļēāļāļāļ°āđāļĢีāļĒāļāļ§่āļē new generation region) āđāļĄื่āļāđāļĄ่āđāļ้āđāļ้āļāļēāļāļāļ°āļูāļāļāļģāđāļāđāļ็āļāđāļ§้āļี่ memory old generation region
-āļั้āļāļี่ 2 : āļŦāļēāļ memory young generation region āđāļ็āļĄāđāļĨ้āļ§ garbage collector āļāļ°āļāļģāļāļēāļĢāđāļĢีāļĒāļāļืāļāļŦāļ่āļ§āļĒāļāļģāļŠ่āļ§āļāļŦāļึ่āļ āļี่āđāļĄ่āđāļ้āļĄีāļāļēāļĢāđāļ้āļāļēāļāđāļĨ้āļ§ āļāļēāļ old generation region āđāļ่āļāđāļāđāļŦ้āļัāļ young generation region
āđāļิāļĄāļีāļั้āļ āļāļ°āļĄีāļāļēāļĢāđāļ่āļ generation āļāļāļ total heap size āļ่āļāļĄāļēāđāļ้āļĄีāļāļēāļĢāđāļ่āļ old generation āļāļāļāļĄāļēāđāļ็āļ tenured generation āļŦāļĨัāļāļāļēāļāļี่ generational memory system āļั้āļāđāļ้āļāļģāļāļēāļĢāļŦāļēāļĢ heap āđāļ้āļēāđāļ āđāļ sized partitions āļี่āļูāļāđāļ่āļāđāļ§้āļāļĒ่āļēāļāļĢāļ°āļĄัāļāļĢāļ°āļ§ัāļāļāļ°āļูāļāđāļĢีāļĒāļāļ§่āļē generation
–Xmn āļāļ°āļāļģāļŦāļāļ size of the heap āļี่āļูāļāļัāļāļŠāļĢāļĢāļŠāļģāļŦāļĢัāļ Eden generation of the heap āđāļāļĢāļēāļ°āđāļĢิ่āļĄāđāļĢāļ object āļี่āļĄีāļāļēāļĢāđāļ้āļāļēāļāļāļ°āļāļāļ memory āđāļื้āļāļāļ้āļāļāļ Eden āļ่āļāļāļี่āļāļ°āļูāļāļāļģāđāļāđāļ็āļāļāļ memory āļั้āļ 2 spaces āļĢāļ°āļŦāļ§่āļēāļ survivor spaces āļāļāļāļĢāļ°āļั่āļāļĄัāļāđāļĄ่āđāļ้āļูāļāđāļĢีāļĒāļāđāļ้āļāļēāļ āđāļĨāļ°āļูāļāļāļģāđāļāđāļ็āļāđāļ§้āļĒัāļ old generation region
older generation = (āļāļāļēāļāļāļāļ -Xmx) – (āļāļāļēāļāļāļāļ -Xmn)
-āļัāļāļั้āļ... –Xmn āļāļ°āļ้āļāļāļĄีāļ่āļēāļ่āļģāļāļ§่āļē –Xmx āđāļŠāļĄāļ
āđāļāļĒāļั่āļ§āđāļāđāļĢāļēāđāļĄ่āļ้āļāļāļāļēāļĢ Eden āļี่āđāļŦāļ่āđāļิāļāđāļ āļŦāļĢืāļāđāļ้āļĄāļēāļāļāļ§่āļēāļี่ garbage collector āļāļ°āđāļĢีāļĒāļāļืāļāļŠู่āļĢāļ°āļāļāđāļ้ āļึāļāđāļĄ่āļāļģāđāļ็āļāļ้āļāļāļั้āļāļ่āļēāđāļŦ้āļัāļāļāļēāļĢāļēāļĄิāđāļāļāļĢ์ -Xmn āđāļิ่āļĄāļ็āđāļ้
āđāļāļĒāļั่āļ§āđāļāđāļĢāļēāđāļĄ่āļ้āļāļāļāļēāļĢ Eden āļี่āđāļŦāļ่āđāļิāļāđāļ āļŦāļĢืāļāđāļ้āļĄāļēāļāļāļ§่āļēāļี่ garbage collector āļāļ°āđāļĢีāļĒāļāļืāļāļŠู่āļĢāļ°āļāļāđāļ้ āļึāļāđāļĄ่āļāļģāđāļ็āļāļ้āļāļāļั้āļāļ่āļēāđāļŦ้āļัāļāļāļēāļĢāļēāļĄิāđāļāļāļĢ์ -Xmn āđāļิ่āļĄāļ็āđāļ้
-āļāļāļāļāļēāļāļี้ āļ็āļĄีāļāļēāļĢāđāļāļ°āļāļģāļ่āļāļีāļāļ§่āļē... āļāļ§āļĢāđāļĨืāļāļ JDK āđāļŦ้āđāļŦāļĄāļēāļ°āļŠāļĄāļัāļ OS āđāļāļĢāļēāļ° OS 64 bit āļāļ°āļĄี heap size default āļĄāļēāļāļāļ§่āļē OS 32 bit āđāļื่āļāļĢāļāļāļĢัāļ size of object āļี่āđāļŦāļ่āļึ้āļ
Keywork : JAVA Performance Tuning, Java Concurrency in Practice
Refference :
-āđāļĢื่āļāļ Dealing with “java.lang.OutOfMemoryError: PermGen space” error
http://stackoverflow.com/questions/88235/dealing-with-java-lang-outofmemoryerror-permgen-space-errorhttp://www.mkyong.com/tomcat/tomcat-javalangoutofmemoryerror-permgen-space/
-āđāļĢื่āļāļ java.lang.OutOfMemoryError: Permgen space
https://plumbr.eu/outofmemoryerror/permgen-space



































