This documentation is for WSO2 Enterprise Service Bus version 5.0.0. For the latest ESB, view the latest WSO2 Enterprise Integrator documentation.

All docs This doc
||
Skip to end of metadata
Go to start of metadata

The <ESB_Home>/repository/conf/synapse.properties file contains tuning parameters relating to the mediation engine. These parameters are mainly used when mediators such as Iterate and Clone which leverage on internal thread pools are used.

The following table explains the parameters included in the synapse.properties file.

Parameter NameDescriptionDefault Value
synapse.threads.coreThe initial number of synapse threads in the pool. This parameter is applicable only if the Iterate or the Clone mediator is used to handle a higher load. The number of threads specified for this parameter should be increased as required to balance an increased load.20
synapse.threads.maxThe maximum number of synapse threads in the pool. This parameter is applicable only if the Iterate or the Clone mediator is used to handle a higher load. The number of threads specified for this parameter should be increased as required to balance an increased load.100
synapse.threads.keepaliveThe keep-alive time for extra threads defined in milliseconds. This parameter is applicable only if the Iterate or the Clone mediator is used to handle a higher load.5
synapse.threads.qlenThe length of the queue that is used to hold the runnable tasks to be executed by the pool. This parameter is applicable only if the Iterate or the Clone mediator is used to handle a higher load.10
synapse.threads.groupThe name of the thread group.synapse-thread-group
synapse.threads.idprefixThe prefix of each thread name.SynapseWorker
synapse.sal.endpoints.session.timeout.defaultThe session time-out time for the session aware load balance endpoint given in milliseconds.600000

synapse.global_timeout_interval

The maximum number of milliseconds within which a response for the request should be received. A response which arrives after the specified number of seconds cannot be correlated with the request. Hence, a warning all be logged and the request will be dropped. This parameter is also referred to as the time-out handler120000
statistics.clean.enableIf this parameter is set to true, all the existing statistics would be cleared before processing a request. This is recommended if you want to increase the processing speed.false
synapse.commons.json.preserve.namespacePreserves the namespace declarations in the JSON output in XML to JSON transformations.false
synapse.xpath.dom.failover.enabled

If this parameter is set to true , it will be possible for ESB to switch to xpath 2.0. The default value for this parameter is false since xpath 2.0 evaluations can cause performance degradation.

WSO2 EI uses the Saxon Home Edition in implementing XPATH 2.0 functionalities, and thus supports all the functions that are shipped with it. For more information on the supported functions, see Saxon Documentation.


false

synapse.timeout_handler_interval

The back end service to which a request has been sent are repeatedly called back for responses at time intervals specified for this parameter. Any endpoints have timed out are identified during these time intervals, and they are no longer called back. Note that specifying a lower value for this parameter results in a higher overhead on the system.15 (seconds)
synapse.script.mediator.pool.size When using externally referenced scripts, this parameter is used to specify the size of the script engine pool to be used per script mediator. The script engines from this pool are used for externally referenced script execution where updates to external scripts on an engine currently in use may otherwise not be thread safe. It is recommended to keep this value at a reasonable size since there will be a pool per externally referenced script.15
synapse.connection.read_timeoutThe connection time-out in milliseconds when ESB is accessing a WSDL URI.100000
synapse.json.to.xml.processing.instruction.enabled

Enables adding processing instructions when performing JSON to XML conversions. For example, you can add processing instructions to identify array elements in JSON payloads with array indices (i.e., marked with "[ ]") and process them to XML.

This property is available for WSO2 ESB 5.0.0 via the WUM update 1938 released on the 24th of November 2017.

false

The parameters of this file may also need to be changed depending on the NHTTP properties as shown in the example below.

If the NHTTP properties are as follows:

snd_t_core=100
#snd_t_max=250
snd_io_threads=5
lst_t_core=100
#lst_t_max=250
lst_io_threads=5
http.socket.timeout=60000
#http.connection.disable.keepalive=1

A reasonable setting for synapse properties would be as follows:

synapse.threads.core=100 
synapse.threads.max=250 
synapse.threads.keepalive=5 
synapse.threads.qlen=1000 
synapse.threads.group=synapse-thread-group 
synapse.threads.idprefix=SynapseWorker
  • No labels