dotCMS - Open Source Content Management System, Ondemand CMS, and Professional Support

Document Search

Article Information

Since Version: 1.6.5
Tags: Memory Configuration
Updated: 12/6/2008 9:20:40 AM
By: Jason Tesser
Doc id: 146893
Print Page: Export to PDF

Memory Configuration

You can configure how much memory dotCMS uses.  How much memory you assign to dotCMS depends on how much total memory the system has, and what other applications or services are running in the same server.  For dedicated production servers, we recommend the following configuration:

Available RAM Total Ram
1GB 512MB
2GB 1536MB
4GB 2560MB

These recommendations assume a dedicated dotCMS server, with the database running in different server.  If the database is running in the same server, enough RAM must reserved for proper database functioning. Please refer to your database documentation for memory requirements.

The amount of RAM dotCMS is configured in one of three places, depending how the dotCMS is started.

In Linux or other Unix like operating systems this is done in Catalina.sh

In Windows this is done in Catalina.bat if the dotCMS is started from the command line.  If the dotCMS is configured as a service, the memory configuration is done in the wrapper.conf file.

One thing to keep in mind when configuring your memory in your dotCMS that the connections you configure in your server.xml take up server memory that is seperate from the dotCMS.  So for example lets say your server.xml has the following configuration

<connector port="80" uriencoding="UTF-8" maxthreads="75" minsparethreads="1" maxsparethreads="150" enablelookups="false" redirectport="8443" acceptcount="500" debug="0" connectiontimeout="20000" disableuploadtimeout="true">
</connector>

You would need to account for 75 connections in memory that is outside of the memory the dotCMS JVM already is taking.  Tomcat says it ca take as much as 1.5 megs per connection but you should be safe if you leave at least 1 meg per maxthread.  Keep in mind if you use mutliple connectors, like a seperate 443(SSL) connector,  you must add the maxthreads for all of them up.



Post a Comment


Add Comments

   

 
Post