Availability Guide for Application Design

Availability in the Pathway Transaction-Processing
Environment
Availability Guide for Application Design525637-004
6-16
Design Implications for RSC/MP Applications
Replicated TDP or Initialized Persistent TDP
The TDP is critical to the function of RSC/MP. Loss of the TDP causes termination of
all workstation sessions, termination of all outstanding I/O operations, and termination
of all outstanding transactions made though that TDP.
To protect your application against loss of the TDP, you can:
Run multiple, replicated TDPs
Run the TDP as an initialized persistent process
Using multiple, replicated TDPs, the client process is able to reconnect to an alternate
TDP.
Using an initialized persistent TDP, the client reattaches itself to the backup TDP,
which has already been initialized with the appropriate configuration information. The
configuration information in the backup TDP gets updated whenever the configuration
in the primary TDP changes.
Using either of these methods, however, workstation sessions are still terminated, as
are outstanding I/O operations and transactions. RSC/MP does not provide the
recovery logic. It is up to the application developer to design the logic in the client
application so that it will restore the connection and the session and restart the
transaction as described in Design Implications for RSC/MP Applications on
page 6-16.
Design Implications for RSC/MP Applications
While a degree of automatic availability is provided by NonStop TS/MP, the TDP, and
the communications subsystem, some additional effort is required by application
designers and developers to ensure the highest levels of availability possible.
TMF transactions begin and end in the TDP, not the client process. If notification of a
failure comes through an attempt to commit a transaction, the client does not know
whether the transaction committed. In addition, connections and sessions do not
automatically survive failures.
Consider the following development and operational concerns.
Development Concerns
To ensure availability of your RSC/MP application, your client program logic must:
Use TMF transactions and save any context that might be needed to restart a
transaction.
Include recovery logic for a failed client/server connection.
Ensure that your client process is coded with adequate error-handling capabilities.
Refer to Section 9, Minimizing Programming Errors, for general information on
error handling.