Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

WSO2 ESB's Java Message Service (JMS) transport allows you to easily send and receive messages to queues and topics of any JMS service that implements the JMS specification. The following sections describe how you can tune the JMS transport of WSO2 ESB for better performance.

...

Add the following parameters to the JMS listener configuration of the <ESB_HOME>/repository/conf/axis2/axis2.xml file:

Code Block
languagexml
<parameter name="transport.jms.ConcurrentConsumers" locked="false">50</parameter> 
<parameter name="transport.jms.MaxConcurrentConsumers" locked="false">50</parameter>

...

  • transport.jms.ConcurrentConsumers: the concurrent threads that need to be started to consume messages when polling.
  • transport.jms.MaxConcurrentConsumers: the maximum number of concurrent threads to use during polling.
Note

The value for locked attribute must be set to false to create multiple listener threads. When this value is set to true If you set the locked property to true, the JMS proxy creates only one listener thread will be created at a given time. If you set it to false, then it creates multiple listener threads from a single proxy to consume messages concurrently.


Anchor
caching
caching
Enable caching

Add the following parameter to the JMS listener configuration of the  <ESB_HOME>/repository/conf/axis2/axis2.xml file to enable caching:

Code Block
languagexml
<parameter name="transport.jms.CacheLevel">consumer</parameter>

...

Add the following parameter to the JMS sender configuration of the  <ESB_HOME>/repository/conf/axis2/axis2.xml file:

Code Block
languagexml
<parameter name="transport.jms.CacheLevel">producer</parameter>

...