Modify the JVM heap size for the on demand router

The JVM heap size setting is the single most critical factor for efficient on demand router (ODR) performance. You might need to modify the JVM heap size setting based on the environment configuration.

The base setting for the ODR under 100% load is approximately 90MB. However, the ODR also needs memory for temporary working space. Since the ODR acts the same for every request, the major factor to determine how much working space is required is throughput. The ODR generates approximately 4 to 5KB of temporary objects per request. The desired time between garbage collection cycles should be at least 10 seconds to minimize heap contention, and generally under 60 seconds to avoid excess delays in completing garbage collection cycles. Test this value, as may factors such as high numbers of queued requests or large in-memory caches can increase the required memory. Testing is important, because values cannot be determined arbitrarily for all possible applications. Therefore, the recommended initial heap setting is calculated as:

  1. In the console click Servers > Server types > On demand routers > on demand router name > Server infrastructure > Java and process management > Process definition > JVM.

  2. Initial heap size and maximum heap size.

Related tasks

  • Tune the on demand router (ODR)
  • Tune ODR persistent connections
  • Create ODRs