Memory use

The maximum memory available to Replication Agent is the first consideration: If too little memory is allocated for the configuration, schema, and transaction profile, Java Virtual Machine (JVM) garbage collection can degrade performance significantly. There are five Replication Agent statistics that provide information about memory use. Specifically, by monitoring the percentage of maximum memory used over time, you can determine whether or not the amount of memory is sufficient for a configuration.

The queue (or buffer) and cache size parameters are the primary configuration parameters that determine memory use. Using the ra_statistics command to monitor the queue and cache sizes, along with the percentage of memory used, can help you determine whether the configuration should be changed to accommodate the amount of memory use allowed or, conversely, whether the amount of memory use allowed should be changed to accommodate the configuration. By decreasing the queue and cache sizes, the percentage of maximum memory use should decrease, resulting in decreased garbage collection and improved performance. Conversely, increasing the maximum memory available should result in improved performance. In general, if the amount of memory used never drops below 50% of the maximum, garbage collection may be hampering Replication Agent performance.

For instructions on setting the default maximum memory, see “Check available memory”.