Chapter Contents

Previous

Next
SAS/CONNECT User's Guide

Indirect-Messaging (Queuing) Benefits

There are many benefits to using the SAS message queuing facility for implementing your distributed applications. The following paragraphs present several benefits and you may think of others as you visualize your distributed applications implemented with SAS message queues.

As is the case with applications that are currently developed with SAS, an application developed with the message-queuing facility is completely portable. There are two interfaces available for using SAS message queues:

In addition, the TCP/IP access method is the only access method that supports indirect messaging.

Because the message-queuing facility is completely integrated with the SAS System, you continue to have the same portability that you expect from your SAS applications.

A significant benefit of using SAS message-queuing for your distributed applications is that the communicating programs run independently of each other in respect to time. This indirect mode of communication has several positive results. Because the programs communicate indirectly by using message queues, each program is completely removed from the interface of any other program. Therefore, an individual program could be modified to execute different logic that is based on message receipt. It could be moved to execute on a different platform, or it could be rescheduled to run at a different time and absolutely none of these things would require any changes to the other programs that make up the application. Also, individual programs could be added or deleted without any disruption to the overall application.

Another benefit of the ability to run communicating programs independently is that there is never a direct link between them. As an illustration, a program that needs to send a message to a queue connects to the queue, sends one or more messages to the queue, retrieves responses if appropriate, and then disconnects. Connections are not left idle while one program waits for a response from another. This helps to minimize the number of active connections that need to be maintained in the network and it facilitates network re-start in case of failure.

The structure of the SAS message-queuing facility insulates application developers from the details of the network. The queue manager is solely responsible for maintaining the queues and for ensuring that the messages in the queues reach their destination when requested and are not lost.

The queue manager is also responsible for establishing the information that is needed by the network protocols that are used to transmit the messages to and from the queues. Because the applications programmer is not distracted by the networking details, attention can be focused solely on the business needs and the application logic that is necessary to meet these needs. The more time and thought that can be given to the business algorithm and the flow of data, the faster and better the application becomes at delivering the necessary information.

A general rule of thumb for writing distributed applications is to "keep the logic as close to the data source as possible in order to minimize network traffic and the cost of client/server computing". Because the SAS message-queuing facility allows all combinations of one-to-one, one-to-many, and many-to-one application structure as well as datagram and reply modes of communication, you have total flexibility with the structure of your distributed application and the ability to minimize the cost of your client/server computing.


Chapter Contents

Previous

Next

Top of Page

Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.