JavaÄÚ´æÒç³ö
´ÓÎïÀíÉϽ²£¬¶ÑÕ»¾ÍÊÇÒ»¶ÎÁ¬Ðø·ÖÅäµÄÄÚ´æ¿Õ¼ä¡£ÔÚÒ»¸ö³ÌÐòÖУ¬»áÉùÃ÷¸÷ÖÖ±äÁ¿¡£¾²Ì¬È«¾Ö±äÁ¿ÊÇλÓÚÊý¾Ý¶Î²¢ÇÒÔÚ³ÌÐò¿ªÊ¼µÄʱºò¾Í±»¼ÓÔØ¡£¶ø³ÌÐòµÄ¶¯Ì¬µÄ¾Ö²¿±äÁ¿Ôò·ÖÅäÔÚ¶ÑÕ»ÀïÃæ¡£
JVM¹ÜÀíÁ½ÖÖÀàÐ͵ÄÄڴ棬¶ÑºÍ·Ç¶Ñ¡£¶ÑÊǸø¿ª·¢ÈËÔ±ÓõÄÉÏÃæËµµÄ¾ÍÊÇ£¬ÊÇÔÚJVMÆô¶¯Ê±´´½¨£»·Ç¶ÑÊÇÁô¸øJVM×Ô¼ºÓõģ¬ÓÃÀ´´æ·ÅÀàµÄÐÅÏ¢µÄ¡£ËüºÍ¶Ñ²»Í¬£¬ÔËÐÐÆÚÄÚGC²»»áÊͷſռ䡣Èç¹ûweb appÓÃÁË´óÁ¿µÄµÚÈý·½jar»òÕßÓ¦ÓÃÓÐÌ«¶àµÄclassÎļþ¶øÇ¡ºÃMaxPermSizeÉèÖýÏС£¬³¬³öÁËÒ²»áµ¼ÖÂÕâ¿éÄÚ´æµÄÕ¼Óùý¶àÔì³ÉÒç³ö£¬»òÕßtomcatÈȲ¿Êðʱºî²»»áÇåÀíÇ°Ãæ¼ÓÔØµÄ»·¾³£¬Ö»»á½«context¸ü¸ÄΪв¿ÊðµÄ£¬·Ç¶Ñ´æµÄÄÚÈݾͻáÔ½À´Ô½¶à¡£
½â¾öÄÚ´æÒç³öÎÊÌ⣺
ÔÚʹÓÃJava³ÌÐò´ÓÊý¾Ý¿âÖвéѯ´óÁ¿µÄÊý¾Ý»òÊÇÓ¦Ó÷þÎñÆ÷(Èçtomcat¡¢jboss,weblogic)¼ÓÔØjar°üʱ»á³öÏÖjava.lang.OutOfMemoryErrorÒì³£¡£ÕâÖ÷ÒªÊÇÓÉÓÚÓ¦Ó÷þÎñÆ÷µÄÄÚ´æ²»×ãÒýÆðµÄ¡£ÕâÖÖÒì³£³£ÓÐÒÔϼ¸ÖÖÇé¿ö£¨ÒÔÏÂÒÔtomcat»·¾³ÎªÀý£¬ÆäËüWEB·þÎñÆ÷Èçjboss,weblogicµÈÊÇͬһ¸öµÀÀí£©£º
¡¡¡¡1. java.lang.OutOfMemoryError: PermGen space
¡¡¡¡PermGen spaceµÄÈ«³ÆÊÇPermanent Generation space£¬ÊÇÖ¸ÄÚ´æµÄÓÀ¾Ã±£´æÇøÓòOutOfMemoryError: PermGen space¡£´ÓÎÄ×ÖÉÏ¿´¾ÍÊÇÄÚ´æÒç³ö£¬½â¾ö·½·¨ÊǼӴóÄڴ档Ϊʲô»áÄÚ´æÒç³ö£¬ÕâÊÇÓÉÓÚÕâ¿éÄÚ´æÖ÷ÒªÊDZ»JVM´æ·ÅClassºÍMetaÐÅÏ¢µÄ£¬ClassÔÚ±»LoadµÄʱºò±»·ÅÈëPermGen spaceÇøÓò£¬ËüºÍ´æ·ÅInstanceµÄHeapÇøÓò²»Í¬,GC(Garbage Collection)²»»áÔÚÖ÷³ÌÐòÔËÐÐÆÚ¶ÔPermGen space½øÐÐÇåÀí£¬ËùÒÔÈç¹ûÄãµÄAPP»áLOADºÜ¶àCLASSµÄ»°£¬¾ÍºÜ¿ÉÄܳöÏÖPermGen space´íÎó¡£ÕâÖÖ´íÎó³£¼ûÔÚweb·þÎñÆ÷¶ÔJSP½øÐÐpre compileµÄʱºò¡£Èç¹ûÄãµÄWEB APP϶¼ÓÃÁË´óÁ¿µÄµÚÈý·½jar, Æä´óС³¬¹ýÁËjvmĬÈϵĴóС(4M)ÄÇô¾Í»á²úÉú´Ë´íÎóÐÅÏ¢ÁË¡£
¡¡¡¡½â¾ö·½·¨£º ÊÖ¶¯ÉèÖÃMaxPermSize´óС
¡¡¡¡a.Èç¹ûtomcatÊÇÒÔbat·½Ê½Æô¶¯µÄ£¬ÔòÈçÏÂÉèÖãº
¡¡¡¡ÐÞ¸ÄTOMCAT_HOME/bin/catalina.sh
¡¡¡¡ÔÚ“echo "Using CATALINA_BASE: $CATALINA_BASE"”ÉÏÃæ¼ÓÈëÒÔÏÂÐУº
¡¡¡¡JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m
¡¡¡¡b.Èç¹ûtomcatÊÇ×¢²á³ÉÁËwindows·þÎñ£¬ÒÔservices·½Ê½Æô¶¯µÄ£¬ÔòÐèÒªÐÞ¸Ä×¢²á±íÖеÄÏàÓ¦¼üÖµ¡£
¡¡¡¡´ò¿ª×¢²á±í£¬ÕÒµ½Ä¿Â¼HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Procrun 2.0\htfty\Parameters\Java£¬ÆäÖÐĿ¼µØÖ·ÖкìÉ«±ê×¢µÄ£¨Èçhtfty£©ÐèÒª¸ù¾Ý²»Í¬Çé
Ïà¹ØÎĵµ£º
JavaÖеĻص÷£¨callback£©ÊǺÜÖØÒªµÄÒ»¸ö¸ÅÄspringÕûºÏhibernate´óÁ¿Ê¹ÓÃÁËÕâÖÖ¼¼Êõ¡£
¾¿¾¹ÔõÑù²ÅÊǻص÷ÄØ£¿
ÕâÊÇÍøÉÏ×î¶à¼ûµ½µÄ˵Ã÷£º
1.class A,class B
2.class AʵÏÖ½Ó¿Úcallback
3.class BÓµÓÐÒ»¸ ......
1¡¢Ñ§»áÔõôÉèÖû·¾³±äÁ¿
´ð°¸£ºÔÚÎҵĵçÄÔÀïÉèÖÃ
2¡¢Ñ§»áÔõôÉèÖÃjava ³ÌÐòÊäÈë²ÎÊý
´ð°¸£ºmain ²ÎÊýÊý×é
3 ѧ»áÔõôÉèÖà classpath·¾¶£¬ÒÔ¼°classpathÊǸÉôµÄ
´ð°¸£ºÒýÓõÄÀàµÄ·¾¶
4 ÖªµÀjarÎÄ ......
ʲôÊÇjava EEÁË¡£Ò»°ãÀ´Ëµ£¬Ò»¸ö³ÉÊìµÄjava EE½â¾ö·½°¸£¬°üÀ¨ÒÔϼ¸¸ö²¿·Ö¡£
1¡¢¿ÉÒÔ¶ÔÍâÌṩ»ùÓÚ±ê×¼ÐÒéÈçxmlµÄ·þÎñ
ÈçWeb Service
2¡¢ÄÚ²¿Í¨ÐÅ»ùÓÚÃæÏò¶ÔÏóµÄͨÐÅÐÒé
Èç RMI£¬Corba£¬XML RPC
3¡¢°²È«ÐԸߣ¬È¨ÏÞ¿ØÖÆÑϸñ
Èç MD5£¬SSL£¬AccountDomain
4 &nbs ......
Java ÖÐµÄ keytool.exe £¨Î»ÓÚ JDK\Bin Ŀ¼Ï£©¿ÉÒÔÓÃÀ´´´½¨Êý×ÖÖ¤Ê飬ËùÓеÄÊý×ÖÖ¤ÊéÊÇÒÔÒ»ÌõÒ»Ìõ(²ÉÓñðÃûÇø±ð)µÄÐÎʽ´æÈëÖ¤Êé¿âµÄÖУ¬Ö¤Êé¿âÖеÄÒ»ÌõÖ¤Êé°üº¬¸ÃÌõÖ¤ÊéµÄ˽Կ£¬¹«Ô¿ºÍ¶ÔÓ¦µÄÊý×ÖÖ¤ÊéµÄÐÅÏ¢¡£Ö¤Êé¿âÖеÄÒ»ÌõÖ¤Êé¿ÉÒÔµ¼³öÊý×ÖÖ¤ÊéÎļþ£¬Êý×ÖÖ¤ÊéÎļþÖ»°üÀ¨Ö÷ÌåÐÅÏ¢ºÍ¶ÔÓ¦µÄ¹«Ô¿¡£
KeytoolÊÇÒ»¸öJavaÊý¾ÝÖ ......
²âÊÔÖз¢ÏÖÈç¹û¼¸¸ö´¦ÓÚ¿ÉÔËÐÐ״̬µÄÏ̵߳ÄÓÅÏȼ¶¶¼Ð¡ÓÚ»òÕßµÈÓÚ6ʱ£¬yield()·½·¨¿É½«ÔËÐлú»áÈøøÓÅÏȼ¶Îª6ºÍÓÅÏȼ¶Îª5µÄÏ̡߳£
¶øÈç¹ûµ÷ÓÃÁËyield()·½·¨µÄÏ̵߳ÄÓÅÏȼ¶´óÓÚ»òµÈÓÚ7ʱ£¬Ôò²»»á½«ÔËÐлú»áÈøøÆäËûÏ̡߳£ ......