Nuclos high user load: max_connections, maxActive, maxThreads, postgresql.conf, server.xml, JDBC pool, performance, concurrent requests.

globe with meridians Language: Deutsch · English

hammer and wrench Configuring Nuclos for high user load

Configure Nuclos for many concurrent requests – align max_connections, maxActive and maxThreads.

Auf dieser Seite

By default Nuclos handles up to 100 concurrent requests. If that is not enough under high load, three configuration files must be aligned (example: 300 requests; PostgreSQL).

1. postgresql.conf

Increase max_connections (default 100) – if it is lower than the number of concurrent requests, requests fail:

max_connections = 300

PostgreSQL starts a separate process per connection – more connections need more memory. Provide enough RAM, otherwise out-of-memory or swapping may occur.

2. nuclos-beans-startup.xml

Located in the archive webapp/WEB-INF/lib/nuclos-server-<version>.jar under META-INF/nuclos/. Adjust the JDBC session pool value maxActive (should be larger than max_connections):

<bean id="nuclosDataSource" class="org.nuclos.server.database.NuclosBasicDatasource" destroy-method="close">
	[...]
	<property name="maxActive" value="350"/>
</bean>

3. server.xml

Under tomcat/apache-tomcat-<version>/conf/. Increase maxThreads of the used HTTP connector (default 200; 150 for SSL):

<Connector compressableMimeType="text/html,text/js,text/css,application/javascript,application/json" compression="on" compressionMinSize="2048" connectionTimeout="20000" port="8010" redirectPort="8443" maxThreads="300"/>

Related pages

gear Tomcat administration


Tomcat.

Öffnen →

gear Cluster service


Scaling.

Öffnen →