Fault Tolerance
Fault Tolerance allows multiple adapter configurations to substitute each other.
When the primary adapter configuration terminates unexpectedly, the token held by the primary configuration is taken over by an adapter configuration in the standby state. In the process of replacement, the standby adapter configuration becomes the primary adapter configuration.
Fault Tolerance is based on the JMS queue. Before enabling Fault Tolerance, you have to define a JMS queue and set the prefetch parameter of the JMS queue to none, and then put several JMS messages in the JMS queue as tokens. The number of tokens corresponds to the number of primary adapter instances.
When running JMS topic as durable, durable names exist on EMS server for each receiver, regardless if adapter configuration is primary or standby.
The following diagram shows how Fault Tolerance works. At first, configuration 1 and configuration 2 fetch one of the two tokens in the JMS queue respectively. They hold the tokens and process messages as primary instances. Configuration 3 does not fetch tokens and runs in standby state. If configuration 2 terminates unexpectedly, it releases the fetched token. Configuration 3 fetches the token released by configuration 2 and continues to process messages as primary configuration.
Enabling Fault Tolerance
To enable the fault tolerance, set the tibco.sdk.faultTolerance.ems.enabled property to ON, and set SDK fault tolerance properties accordingly.
For more detailed information on the SDK fault tolerance properties, see "SDK Fault Tolerance Properties" in TIBCO ActiveMatrix Adapter for SAP Properties.
You can also configure fault tolerance properties in TIBCO Business Studio and TIBCO Administrator.