10.02.2013 Views

Progress Sonic ESB Configuration and Management Guide

Progress Sonic ESB Configuration and Management Guide

Progress Sonic ESB Configuration and Management Guide

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Using Shared Subscriptions to Topics<br />

Evaluating Endpoint Requirements on JMS Destinations<br />

With topic subscriptions there can be cases where one application acting as a topic<br />

subscriber cannot process messages as fast as messages are being published. This leads to<br />

a bottleneck, where the subscribing application falls farther <strong>and</strong> farther behind.<br />

You can establish groups of topic subscribers that share subscriptions to allocate the<br />

message load among them. Within these groups, each message is delivered to, <strong>and</strong><br />

consumed by, only one member of the group. These group members can be located on<br />

dispersed computers over diverse JMS connections. The implementation is compatible<br />

with clusters of brokers so that the members of a consumer group can connect to different<br />

brokers in a <strong>Sonic</strong>MQ cluster. Regular subscribers, durable subscribers, <strong>and</strong> participants<br />

in a shared subscription can be active concurrently on a broker.<br />

<strong>Sonic</strong> <strong>ESB</strong> prepends the service name to the topic name when defining subscribers within<br />

a group: [[ServiceName]]topicName. When you select a destination for a shared<br />

subscription, <strong>Sonic</strong> <strong>ESB</strong> automatically prepends the service name to the topic you select<br />

(if shared subscriptions are enabled for the service, which is the default condition).<br />

For detailed information on implementing shared subscriptions, see the “Publish <strong>and</strong><br />

Subscribe Messaging” chapter in the <strong>Progress</strong> <strong>Sonic</strong>MQ Application Programming<br />

<strong>Guide</strong>.<br />

Using Concurrent Durable Subscriptions to Topics<br />

You can configure the entry endpoint of a service to define a durable subscription to a<br />

topic. In <strong>Sonic</strong> <strong>ESB</strong>, multiple service instances can concurrently process messages sent to<br />

a durable subscription.<br />

Durable subscriptions are created using a unique prefix appended to the subscription<br />

name configured on the JMS endpoint. The unique prefix consists of the management<br />

container name, the name of the <strong>ESB</strong> service configuration (the service name), <strong>and</strong> the ID<br />

of the message listener.<br />

The Concurrent Durable Subscription setting on an endpoint is a boolean value:<br />

● When set to False, the number of listeners to is limited to one. Also, only one instance<br />

of the service can be running anywhere in your <strong>ESB</strong>. This setting is preferred if you<br />

care about guaranteeing order in processing. The effect is similar to setting Exclusive<br />

on a queue.<br />

● When set to True, the default value, multiple containers are allowed to run the service,<br />

<strong>and</strong> each of those containers can have multiple listeners. This setting is appropriate<br />

when you want to load-balance <strong>and</strong> scale processing, <strong>and</strong> are not concerned about<br />

order in processing.<br />

<strong>Progress</strong> <strong>Sonic</strong> <strong>ESB</strong> <strong>Configuration</strong> <strong>and</strong> <strong>Management</strong> <strong>Guide</strong> 8.5 100

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!