Performance and scalability: Gargbage Collector runs twice in a minute and causing problems
Hi, My production application is deployed on Websphere 5.1. I have enabled the verbose collection in WAS and I see that GC get invoked twice in a minute and it releases around 20MB - 400MB of memory. Whenever it releases 400MB system runs slow. This problem recently started and there were no change to my application done since past 6months. Only that additional users and the data on the system increased. Any quick advise would be of great help ! Also please let me know if enabling verbose collection flag makes the application to run slow. Thanks Vaddi
- Posted by: srini vaddi
- Posted on: February 20 2008 09:12 EST
Due to additional load, there might be some increase in objects creation and memory utilization. There might be memory leak as well. Which versoin of JDK are u using? If you are using IBM JDK 1.3 or higher, try using "-Xms512m -Xmx1024m -Xgcpolicy:optavgpause" with server startup command. IF you are using Sun JDK you can try "-server -Xms512m -Xmx1024m -XX:+UseConcMarkSweepGC" Also check out this thread. http://www.theserverside.com/discussions/thread.tss?thread_id=38300
Hi, I am using IBM JDK 1.3 version. Does the below arguments that you asked me to set means that we are setting minimum and maximum heap size in Wesphere Server right? "-Xms512m -Xmx1024m -Xgcpolicy:optavgpause" If so I have already set minimum heap size as 512 and maximum heap size as 1024 using Webpshere Admin Console but still application runs slow. My server has got 4GB RAM. I don't know how to set the GC Policy to "optavgpause" using Websphere Admin Console. Please let me know your opinion. Regards Vaddi
hi Vaddi, All these option are set in the startup command of your websphere server. I havnt used websphere but thr must be startup script file which is used to start websphere server. on unix $WAS_HOME/bin/adminserver.sh WAS_HOME/bin/startupServer.sh on windows %WAS_HOME%\bin\adminserver.bat You need to edit it and in the java command , you need to pass these arguments as mentioned above.