jvm.options

[engineDir]/configuration/jvm.options

  1################################################################
  2# JVM options of the Axon Ivy Engine
  3################################################################
  4
  5# General settings
  6
  7-XX:-OmitStackTraceInFastThrow
  8
  9#----------------------------------------------------------------
 10
 11# Memory Settings
 12# Xms represents the initial size of total heap space
 13#
 14# Xmx represents the maximum size of total heap space. 
 15# Default is 2 GB which is fine for small installations. 
 16# For medium or large installation this value has to be increased.
 17# The heap space can be monitored in the Engine Cockpit. 
 18# Have a look at Monitor > Engine > Memory
 19
 20-Xms128m
 21-Xmx2g
 22
 23#----------------------------------------------------------------
 24
 25# Garbage collector
 26
 27-XX:+UseG1GC
 28-XX:+UseStringDeduplication
 29
 30#----------------------------------------------------------------
 31
 32# Headless mode
 33# no X11 environment is required
 34
 35-Djava.awt.headless=true
 36
 37#----------------------------------------------------------------
 38
 39# See: https://nvd.nist.gov/vuln/detail/CVE-2024-56337
 40-Dsun.io.useCanonCaches=false
 41
 42#----------------------------------------------------------------
 43
 44# JMX Settings
 45# enable these settings if you want to have JMX access from another
 46# user on the same machine or from a remote host.
 47
 48#-Dcom.sun.management.jmxremote.port=9003
 49#-Dcom.sun.management.jmxremote.login.config=jmx
 50#-Djava.security.auth.login.config=configuration/jaas.config
 51#-Dcom.sun.management.jmxremote.ssl=false
 52#-Dcom.sun.management.jmxremote.autodiscovery=true
 53
 54# Define the port of the JMX remote object. 
 55# The default value is a random port number.
 56# Needs to be configured if the communication with the JMX client goes through a firewall. 
 57# You can use the same port number as defined above for the RMI registry port (see com.sun.management.jmxremote.port).
 58# You need to open both ports (com.sun.management.jmxremote.rmi.port and com.sun.management.jmxremote.port) on the firewall. 
 59
 60#-Dcom.sun.management.jmxremote.rmi.port=9003
 61
 62# Define the IP address or hostname a client can use to establish a connection
 63# with this machine. The default value is the standard IP address of the machine.
 64# Needs to be configured if the JMX client is in an 
 65# external network and the communication with this machine is going through an external 
 66# IP address with network address translation (NAT). 
 67 
 68#-Djava.rmi.server.hostname=<external IP address of the machine>
 69
 70# Define the IP address or hostname of this machine, on which
 71# the JMX ports should be bound.
 72# By default, the JMX ports are bounded to all IP addresses of the machine.
 73
 74#-Dcom.sun.management.jmxremote.host=<IP address of the machine>
 75
 76#----------------------------------------------------------------
 77
 78# Remote Debugging
 79# enable these settings to activate Java remote debugging
 80
 81#-agentlib:jdwp=transport=dt_socket,server=y,address=*:8000,suspend=n
 82
 83#----------------------------------------------------------------
 84
 85# InaccessibleObjectException or IllegalAccessError
 86# With Java 17 it is not allowed to access internal parts of the JDK. (Nether by reflection nor by calling an internal API)
 87# However some libraries use (deep) reflection or internal API which causes now in the following errors:
 88
 89# InaccessibleObjectException can be fixed by:
 90#--add-opens=<source-module>/<package>=<target-module>(,<targetModule>)*
 91
 92# IllegalAccessError can be fixed by:
 93#--add-exports=<source-module>/<package>=<target-module>(,<targetModule>)*
 94
 95#----------------------------------------------------------------
 96
 97# Java Flight Recorder
 98# Enable these settings to activate Java Flight Recorder at Engine startup. 
 99# Note, you can also start the Flight Recorder in the Engine Cockpit.
100# -XX:StartFlightRecording=delay=1s,disk=true,dumponexit=true,duration=10m,filename=axonivy.jfr 
101
102# Set the depth of stack traces that are recorded. 
103# If Mission Control reports that stack traces were truncated then increase this setting
104-XX:FlightRecorderOptions=stackdepth=300
105
106#----------------------------------------------------------------
107
108# SSL / TLS
109# Enable the following setting to only allow TLS version 1.3 and disable TLS version 1.2.
110# TLS versions SSL3, 1.0, 1.1 are disabled by default.
111# See also property jdk.tls.disabledAlgorithms that can be set in the JVM's conf/security/java.security file 
112# for more options. 
113# ‑Djdk.tls.client.protocols="TLSv1.3" 
114
115#----------------------------------------------------------------