[opencms-dev] Optimizing OpenCMS performance.

Jonathan Woods jonathan.woods at scintillance.com
Thu Jun 15 07:00:15 CEST 2006


Nigel -

No stunning insight, I'm afraid - but I did get a good performance increase
by the hack of making all my stuff 'final', including local variable
declarations where possible.  And I believe the OpenCms distro is compiled
for J2SE 1.4, so you could always get the source and recompile for 1.5 with
full optimisations.

The other thing I'd try in desperation is see what's going on with the
OpenCms cache, and maybe cache more or less.  I'm still in development phase
[hello, client!] so all my OpenCms-level caching's off - but I found huge
improvements from implementing my own simple caching of e.g. navigation
output.

Interesting to note you're using jsvc.  I found it buggy, and ended up
running java directly.  I don't suppose that could be the problem, but you
never know.

Jon

-----Original Message-----
From: opencms-dev-bounces at opencms.org
[mailto:opencms-dev-bounces at opencms.org] On Behalf Of Nigel Kersten
Sent: 15 June 2006 05:47
To: The OpenCms mailing list
Subject: [opencms-dev] Optimizing OpenCMS performance.

We've started hitting a bit of a problem on our OpenCMS install where jsvc
is taking up large amounts of CPU, and I was wondering whether anyone had
any performance tips...

It seems to be related to users opening up and editing our largest XML
schemas, which are quite complicated and nested.

I'm running apache2 with mod_proxy and Tomcat like this:

As a side-note, from reading up on this, it sounds like the suggested
Alkacon config of acceptCount="100" is way too high, and I have noticed cpu
usage drop once I brought it down to 20.

<Server port="8005" shutdown="SHUTDOWN" debug="0"> <Service
name="Tomcat-Standalone">

<Connector port="8080"
                maxThreads="200" minSpareThreads="8"  
maxSpareThreads="50"
                enableLookups="false" redirectPort="8443"  
acceptCount="20"
                proxyName="opencms.cofa.unsw.edu.au" proxyPort="80"
                debug="0" connectionTimeout="20000"
                disableUploadTimeout="true" /> <Connector port="8081"
                maxThreads="200" minSpareThreads="8"  
maxSpareThreads="50"
                enableLookups="false" redirectPort="8443"  
acceptCount="20"
                proxyName="new.cofa.unsw.edu.au" proxyPort="80"
                debug="0" connectionTimeout="20000"
                disableUploadTimeout="true" />


<Engine name="Standalone" defaultHost="localhost" debug="0"> <Host
name="localhost" debug="0" appBase="webapps" unpackWARs="true"  
autoDeploy="true">
<!-- You can change "unpackWARs" and "autoDeploy" to false after the
installation is finished --> <Logger
className="org.apache.catalina.logger.FileLogger"
     directory="logs"  prefix="localhost_log." suffix=".txt"
     timestamp="true"/>
</Host>
</Engine>
</Service>
</Server>

local options for Tomcat are:

export JAVA_JVM_VERSION=1.5
export JAVA_OPTS="-Xms512m -Xmx2048m -Djava.awt.headless=true"

So we've got a fair amount of ram.

PhysMem:   229M wired,  603M active,  835M inactive, 1.63G used,  
1.37G free



--
Nigel Kersten [Senior Technical Officer] College of Fine Arts, University of
NSW, Australia.
CRICOS Provider Code: 00098G




_______________________________________________
This mail is sent to you from the opencms-dev mailing list
To change your list options, or to unsubscribe from the list, please visit
http://lists.opencms.org/mailman/listinfo/opencms-dev





More information about the opencms-dev mailing list