BEA Logo BEA Tuxedo Release 8.0

  BEA Home  |  Events  |  Solutions  |  Partners  |  Products  |  Services  |  Download  |  Developer Center  |  WebSUPPORT

 

   Tuxedo Documentation   |   Administering a BEA Tuxedo Application at Run Time   |   Local Topics   |   Previous Topic   |   Next Topic   |   Contents

 


How to Use Data-Dependent Routing

Data-dependent routing is useful when clients issue service requests to:

A horizontally-partitioned database is an information repository that is divided into segments, each of which is used to store a different category of information. This arrangement is similar to a library in which each shelf of a bookcase holds books for a different category (for example, biography, fiction, and so on).

A rule-based server is a server that determines whether service requests meet certain, application-specific criteria before forwarding them to service routines. Rule-based servers are useful when you want to handle requests that are almost identical by taking slightly different actions for business reasons.

Note: For detailed information about factory-based routing for a distributed BEA Tuxedo CORBA application, refer to the Scaling, Distributing, and Tuning CORBA Applications guide.

Example of Data-dependent Routing with a Horizontally-partitioned Database

Suppose two clients in a banking application issue requests for the current balance in two accounts: Account 3 and Account 17. If data-dependent routing is being used in the application, then the BEA Tuxedo system performs the following actions:

  1. Gets the account numbers for the two service requests (3 and 17).

  2. Checks the routing tables on the BEA Tuxedo bulletin board that show which servers handle which range of data. (In this example, server 1 handles all requests for Accounts 1 through 10, and server 2 handles all requests for Accounts 11 through 20.)

  3. Sends each request to the appropriate server. Specifically, the system forwards the request about Account 3 to server 1, and the request about Account 17 to server 2.

The following figure illustrates this process.

Data-dependent Routing with a Horizontally-partitioned Database


 

Example of Data-dependent Routing with Rule-based Servers

A banking application includes the following rules:

Two clients issue withdrawal requests: one for $100 and one for $800. If data-dependent routing is enabled to support the withdrawal rules, then the BEA Tuxedo system performs the following actions:

  1. Gets the amount specified for withdrawal in the two service requests ($100 and $800).

  2. Checks the routing tables on the BEA Tuxedo bulletin board that show which servers handle requests for the amount being requested. (In this example, server 1 handles all requests to withdraw amounts up to $500; server 2 handles all requests to withdraw amount over $500.)

  3. Sends each request to the appropriate server. Specifically, the system forwards the request for $100 to server 1 and the request for $800 to server 2.

The following figure illustrates this process.

Data-dependent Routing with Rule-Based Servers


 

See Also

 

back to top previous page next page