Hello everyone. I recently develop my App use Wicket1.3.3. It's my first time to use this framework and I feel it's really really a perfect framework for me. My app support both Simplified Chinese , Traditional Chinese, I implement this with Wicket i18n feature. With the load increasing these days, I found my app would become very lag abount every 24 hours ,so that i would only restart it without any choice. when I found the lag, My log records many Exceptions like : "after 1 minute the Pagemap null is still locked by: Thread[http-8080-321,5,main], giving up trying to get the page for path xxx"
I check the JVM status with jstat -gc , It tells that the Heapsize is full even after full GC. My VM paraemter is "-Xms2000m -Xmx2000m -XX:MaxNewSize=250m -XX:MaxPermSize=250m" My deploy server has 2*CPU and 4G memory, Redhat AS4 OS + tomcat 6.0. There're 2000 sessions on the day while the timeout threshold is 15 minutes. So i dump the whole heapsize with the command " jmap -dump:live,format=b,file=3.dump.hprof processid" and i truely get a 2G size dump files. I use SAP Memory Analyer to see what're stored in HeapMemory. and I found a strange number of Retained Heap usage: Classname ShallowHeap RetainHeap RetainedHeap% [EMAIL PROTECTED] 16 1,755,070,352 87.64% [EMAIL PROTECTED] 48 1,755,070,336 87.69% [EMAIL PROTECTED] 33,554,448 1,755,069,632 87.69% - [EMAIL PROTECTED] 24 3928 0.00% - [EMAIL PROTECTED] 24 3928 0.00% - [EMAIL PROTECTED] 24 3928 0.00% - [EMAIL PROTECTED] 24 3928 0.00% - [EMAIL PROTECTED] 24 3928 0.00% - [EMAIL PROTECTED] 24 3928 0.00% + 2,863,659 more... Is that means that the Localizer Object used most of the heap size? or Is this number normal for Wicket App? I wonder whether I forget to release the memory by my mis-using of i18n feature? Is there any attentions I must pay to when dealing with Localizer? This problem annoys me more the 2 weeks. I really need some help. Thanks .