cancel
Showing results for 
Search instead for 
Did you mean: 

Tomcat at 100% CPU

gerryr
Champ in-the-making
Champ in-the-making
I performed a full reindex 2 days ago.  Took quite a while to complete.

Today I am in Alfresco Share working in the Repository setting permissions on various folders.

In the middle of this work Alfresco appears to totally freeze up.

I bring up Task Manager and see Tomcat7 at 100% CPU.

I stop and restart Tomcat.  Same problem.

What is causing this?

I checked in the L-O-G (shhh, don't tell Jeff) and everything appears normal.  Just entries from the last startup.

This has been going on for hours now.  Still Tomcat7 at 100% CPU.  But nothing in any log.

Alfresco now appears almost totally hung.

4 REPLIES 4

gerryr
Champ in-the-making
Champ in-the-making
So Tomcat finally relented after a few hours.

I went back to setting permissions on folders in Repository.

Again Tomcat begins to chew up CPU.

I stop working and just let Alfresco sit for a while and the sluggishness goes away.

I checked my JVM settings and it has 6G max which should be more than plenty to handle one person doing some simple permission setting work.

Would like to know how to prevent this from occurring.

gerryr
Champ in-the-making
Champ in-the-making
If Tomcat can be configured to run under it's own SID then this technique might be useful in limiting CPU usage on Windows 2008 R2:

http://technet.microsoft.com/en-us/library/ff384148%28WS.10%29.aspx

This is similar to cpulimit tool on Linux and cputhrottle on OSX except it requires the process to run under a specific user account SID.


vdewillem
Champ in-the-making
Champ in-the-making
I would profile your cpu using visualvm to see what's going on:
http://www.baptiste-wicht.com/2010/07/profile-applications-java-visualvm/

gerryr
Champ in-the-making
Champ in-the-making
Profiling is fine but that would mainly be up to the Alfresco development team.

What end-users need is a means of throttling Tomcat.  Tomcat has a reputation of excessive CPU utilization. 

I've run into this before in other Java applications where Tomcat started using 100% CPU.

So the throttling tools are what's needed as listed in my previous post in order to control CPU usage.