JVMARGS in OpenEdge release 10 and later are set in the AdminServerPlugins.properties
file and also in ubroker.properties
file for individual ubrokers. These are both located in the DLC/properties
JVMARGS may be set the same for all processes/plugins started by the AdminServer if set under the [PluginPolicy.Progress.AdminServer]
section of the AdminServerPlugins.properties
file or each process may be tailored differently in their separate configuration area. (eg NameServer, AppServer, WebSpeed, DataServer)
jvmArgs can also be set in ubroker.properties
file under specific broker definition, this setting in ubroker.properties file will overwrite any setting in AdminServerPlugins.properties.
In light of the above, the order of precidence is as follows:
AdminServer heap is set in dlc/properties/AdminServerPlugins.properties under [PluginPolicy.Progress.AdminServer] jvmargs=-Xmx256m -Xms128m
a. Set GLOBAL ubroker non-overidable in dlc/properties/AdminServerPlugins.properties under the [PluginPolicy] jvmargs=-Xms32m
b. Set GLOBAL ubroker overidable after commenting out (a) [PluginPolicy] setting specific jvmArgs in ubroker.properties under the [UBroker]; [NameServer]
c. Overide (b) setting for all UBroker-type setting specific ubroker jvmArgs in ubroker.properties under the [UBroker.AS] [UBroker.WS]
d. Overide (c) setting specific ubroker jvmArgs in ubroker.properties eg [UBroker.AS.asbroker1] [NameServer.NS1] [UBroker.WS]
The following examples demonstrate the information above:
- -Xms <size> set initial Java heap size
- -Xmx <size> set maximum Java heap size
JVMARGS maximum memory limit is set to 256m for all AdminServer processes unless it is overridden by an individual process setting:
classpath=<path to all required jar files in DLC/java/ext DLC/java >
jvmargs=-Xmx256m -Djava.awt.headless=true -Xbootclasspath/a:C:\Fathom-OE10.0b\fm/jars/pja.jarExample 2: JVMARGS will use a minimum of 64m for all unified brokers under the AdminServer (eg: (NameServer, AppServer, WebSpeed, DataServer etc) in one place and will over-ride the global setting in Example 1.
jvmargs=-Xms64m Example 3: JVMARGS maximum memory limit is set to 512m for the
SonicMQ Adapter and will over-ride the global setting in Example 1:
jvmargs=-Xmx512m Example 4: JVMARGS will use a minimum of 128m and maximum 1g java heap for asbroker1
and will over-ride the global setting in Example 1 and the unified brokers setting in Example 2
. This change is made in the ubroker.properties
It is recommended to use the same size for the minimum and maximum heap size to reduce the periodic pause time that happens as a result of the cleaning up of the garbage collection to free-up the heap space.
After the changes are made, re-start the AdminServer in order for the settings to take effect.