Tuning recommendations
Please see deploy.properties
for recommended default configurations. In
addition, the following guidelines should be applied when tuning memory settings.
The following should be considered for all bundle settings:
- The most common parameters used to tune performance are the heap sizes defined by -Xms
(minimum/initial allocation) and -Xmx (maximum allowed allocation). Configure the maximum
and minimum heap sizes to equal values (-Xmx and -Xms)Note: Default values are not tuned in this manner. This is to reduce RAM consumption for installs with a concurrency less than 250 users.
- To maximize your compute resources set the -Xmx value to leverage as much memory as possible. Some memory should be left free for use by the Operating System (see your OS documentation for general recommendations / guidelines), but the remainder may be allocated to the installed bundles by increasing the -Xmx value.
- Java garbage collection cycles consume system resources and can slow down the system. If possible, set the -Xms and -Xmx values the same to minimize the frequency of garbage collection cycles.
- Outside of heap size allocations, JVM defaults generally work well with EngageOne Server. Generally, rely on defaults and modify configurations judiciously.
- Use the concurrent mark sweep garbage collector and disable the explicit garbage collection. (-XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC)
- Allocate a third of the heap size to 'young' generation. (set the -XX:NewSize to at least one third of the -Xmx value)
- Review all the information present in AM documentation available online: https://backstage.forgerock.com/docs/am/7.4/maintenance-guide/tuning-jvm-for-openam.html