This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I dont know where to put this post.. but I am in real bad shape.. I have a website www.hala.com .. I have configured it to run with mod_jk connector to run apache and tomcat on same port... The problem is, my Linux server gets struck after running few days and all the jsp sites render very slowly.. I checked on server and run command "top" to find CPU usage, it showed CPU 98% in use and all this is used up by a process "Java" must be tomcat..
Then I used to kill that process and restart tomcat again. and it works fine for few days again come across the same problem..
Again I have to repeat the process (kill java process and start tomcat).
If your app requires close to 64 megs of heap space, it is understandable that your CPU is maxing out after a period of time since the app will have to run Garbage Collection (GC) almost continuously.
Try increasing it and watch the app for a period of time. If it goes a couple weeks without an issue, it probably just needed more RAM. If, on the other hand, you've got a memory leak, increasing the heap size will only postpone the inevitable.
You can monitor the heap size from the manager app that ships with Tomcat http://localhost:8080/manager/html Click on the "Server Status" link and look for the "JVM" section.
If the problem still persists, try running Tomcat as a standalone. Personally, I don't even bother with the connectors and external webservers.
Joined: Aug 11, 2003
Thanks for the wonderful reply.. Well tomcat does not run on port 8080 on the server.. where can I check the tomcat manager on the server where tomcat and apache run on similar port??
Moreover, I tried lookin Server Status on my local machine but could not find the link of that.. Do I need to change any settings for doing that so that I can see the status?..