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.

Multiple Brokers, Clusters, <strong>and</strong> Nodes<br />

Evaluating Endpoint Requirements on JMS Destinations<br />

The ability to access services over the underlying <strong>Sonic</strong>MQ messaging layer is an<br />

important consideration when a <strong>Progress</strong> <strong>Sonic</strong> <strong>ESB</strong> service calls out to other services <strong>and</strong><br />

expects a reply, or when a <strong>Progress</strong> <strong>Sonic</strong> <strong>ESB</strong> process connects many <strong>ESB</strong> services.<br />

<strong>Sonic</strong>’s Dynamic Routing Architecture (DRA) is a robust, secure way to send messages<br />

through a broker or cluster of brokers to a destination on another broker or cluster. (In<br />

routing, each broker or cluster is a routing node. For more information on DRA, clusters,<br />

<strong>and</strong> routing nodes, see the “Multiple Nodes <strong>and</strong> Dynamic Routing” <strong>and</strong> “Clustered<br />

Brokers” chapters in the <strong>Progress</strong> <strong>Sonic</strong>MQ Deployment <strong>Guide</strong>.)<br />

In multi-node domains, <strong>Progress</strong> <strong>Sonic</strong> <strong>ESB</strong> uses DRA to make fewer direct connections<br />

to remote nodes by using the <strong>ESB</strong> (JMS) connection <strong>and</strong> DRA routes to send to remote<br />

nodes. (Every <strong>ESB</strong> Container has an <strong>ESB</strong> (JMS) connection. See “Creating <strong>ESB</strong><br />

Containers” on page 58 for information on specifying the <strong>ESB</strong> Container connection.)<br />

When a message is sent to a node-qualified destination, the <strong>ESB</strong> (JMS) connection is used<br />

to send the message to the broker associated with the <strong>ESB</strong> Container on the bus. You<br />

configure an endpoint using a node-qualified queue or topic name to reference a queue or<br />

topic on a remote node to which the client (<strong>ESB</strong> service) is not connected. For example,<br />

you can configure the <strong>ESB</strong> (JMS) connection to NodeA (a routing node) <strong>and</strong> an endpoint<br />

based on queue, NodeB::Q2. Messages travel over the DRA connection of NodeA to NodeB.<br />

<strong>Progress</strong> recommends using this node-qualified syntax as a best practice, as it avoids<br />

making new connections from an <strong>ESB</strong> Container to all the remote nodes. <strong>Progress</strong><br />

recommends using the node-qualified syntax even if you are not running over DRA—<br />

doing so eases the transition if you decide to implement DRA in the future.<br />

The bus connection broker must have DRA routes defined for each of the remote nodes<br />

that can be sent to. If not, sent messages go to the broker’s dead message queue (DMQ).<br />

Important If the DRA connection fails, the message goes to the DMQ rather than to the rejected<br />

message endpoint (RME), provided the message is sent PERSISTENT <strong>and</strong><br />

JMS_<strong>Sonic</strong>MQ_preserveUndelivered <strong>and</strong> JMS_<strong>Sonic</strong>MQ_notifyUndelivered are set to true<br />

(the <strong>Progress</strong> <strong>Sonic</strong> <strong>ESB</strong> QoS is AT_LEAST_ONCE or EXACTLY_ONCE on the process.) For<br />

more information, see the <strong>Progress</strong> <strong>Sonic</strong> Workbench User <strong>Guide</strong> in the Eclipse help.<br />

The only time the bus connection is not used is when the node is sonic.http, an HTTP<br />

outbound routing node. In this case, the <strong>ESB</strong> Container’s HTTP connection is used, as in<br />

outbound web service invocations. (For more information, see the <strong>Progress</strong> <strong>Sonic</strong><br />

Workbench User <strong>Guide</strong> in the Eclipse help.)<br />

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

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

Saved successfully!

Ooh no, something went wrong!