How to tune the number of connections in the server database pool

Tune the number of connections in the server database pool

You can tune several attributes of the repository database connection pool to improve performance. There are three resources specified:

jdbc/jasperserver jdbc/sugarcrm jdbc/foodmart

Probably you will only be interested in tuning the jdbc/jasperserver resource. If you're running SugarCRM you might be interested in that resource. The foodmart entry is specified for a sample that is shipped with the Server. Those two entries are examples of connection pools setup for JNDI Datasources.

You can set these values in the context.xml file, which you can find in the /jasperserver-pro/META-INF directory.

Modify the object you want to tune, adding or modifying the attributes according to your needs.

Repository Database Connection Pool (DBCP) Attributes
Attribute Description Default Value
maxActive Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. 100
maxIdle Maximum number of idle dB connections to retain in pool. Set to -1 for no limit.  See also the DBCP documentation on this and the minEvictableIdleTimeMillis configuration parameter. 30
maxWait Maximum time to wait for a dB connection to become available in ms, in this example 10 seconds. An Exception is thrown if this timeout is exceeded.  Set to -1 to wait indefinitely. 10000

Other Performance Tips: