Versions Compared

Key

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

...

Expand
titleSample Sender Configuration
Code Block
languagexml
<transportSender name="rabbitmq" class="org.apache.axis2.transport.rabbitmq.RabbitMQSender">
   <parameter name="RabbitMQConnectionFactory" locked="false">
       <parameter name="rabbitmq.server.host.name" locked="false">localhost</parameter>
       <parameter name="rabbitmq.server.port" locked="false">5672</parameter>
       <parameter name="rabbitmq.server.user.name" locked="false"></parameter>
       <parameter name="rabbitmq.server.password" locked="false"></parameter>
       <parameter name="rabbitmq.connection.retry.interval" locked="false">10000</parameter>
       <parameter name="rabbitmq.connection.retry.count" locked="false">5</parameter>
       <parameter name="rabbitmq.connection.pool.size" locked="false">10</parameter>
   </parameter>
</transportSender>

Increasing the member count

If you set the following parameter to false in the <EI_HOME>/conf/axis2/axis2.xml file, it sets the configuration to handle the acknowledgement in the application level: <parameter name="rabbitmq.queue.auto.ack">false</parameter> 

Thus, it sends back the acknowledgement once it sends the request to the back-end. (i.e., It does not wait for the response). However, in a message store/processor implementation, it waits for the response to send the acknowledgment back to provide guaranteed message delivery. Therefore, there might be a delay in processing messages using message processors than using a message producer/consumer implementation.

However, you can increase performance of message processors either by increasing the member count or by having multiple message processors. If you increase the member count, it will create multiple child processors of the message processor.

Reuse the connection factory in the publisher

...