Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We started noticing a really weird pattern with our web page. Exactly every 30 minutes we are seeing a huge drop in requests in our server. We go from about 2,000 requests per minute down to 500-800 requests per minute. Our web site slows down completely and takes almost a minute to open. The pattern is shown on the following graph (taken from probe):

As you can see exactly at the same time, we get a drop in requests for about 3 minutes followed by a huge peak of requests. You can also notice an increase in errors just when this happens. We have noticed this pattern for the last 2 days and have no idea what it could be. We have already increased the memory usage for tomcat with no success in stopping this issue.

All websites running on tomcat experience a huge slowdown, not just our main site. Also our server sees no changes whatsover in performance, so we are pretty sure that our server is not the bottleneck.

Any help or ideas on what this could be will be greatly appreciated.


share|improve this question
Could it be that Tomcat is redeploying the war? Just a thought--check the last modified date. Also, anything in the Tomcat logs? – Andrew M. May 17 '12 at 18:17
You should enable verbose GC logging and watch the server for a few days. Graph the full GC collections and see if it coincides with your slowdowns. – Christopher Schultz May 24 '12 at 16:17
Also, since you know the frequency of the slowdowns, you ought to be able to look to see if the server is doing else unrelated (e.g. some scheduled job) at those times and you're just fighting against your webapp. – Christopher Schultz May 24 '12 at 16:18

Did you checked your garbage collector policy? Just increase memory is not a good idea, you should make your graphs behave with continuous increase and decrease. When you have a high amount of memory allocated you going to take more time to empty.

Look at this: JBoss - Chapter 9. Best Practices

Heap Size Heap size is an important consideration for garbage collection. Having an unnecessarily large heap can stop the JVM for seconds, to perform garbage collection. Small heap sizes are not recommended either, because they put unnecessary pressure on the garbage collection system.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.