The components most affected by the need to provide feed fault tolerance are the Publishers and Subscribers.
The Publisher is designed to send messages over multiple multicast channels and the Subscriber is designed to receive messages over the same channels.
By leveraging capabilities of the feed itself, or those provided by various feed handlers, Sybase RAP handles market data messages at a very high rate with a high probability of delivery. A set of multicast channels is designated as the primary channels to be used by one or more Publishers. Another set of multicast channels is designated as the secondary channels. When the primary feed handler is operational, the primary and secondary subscribers get the messages from the primary channels. If the primary feed handler fails, the secondary feed handler begins sending messages over the secondary channels to the primary and secondary subscribers. On the Subscriber side, all subscribers are configured to receive data over both primary and secondary channels.
If high availability is required, you must ensure that there is no overlap between the primary and secondary channels used for multicasting.
The primary RAPCache must also have a secondary RAPCache configured, to go along with the secondary Subscriber for the RAPCache. This way, both RAPCaches contain the same data during normal operations.
The primary RAPStore (an instance of an IQ multiplex server) does not usually have a secondary RAPStore configured. The RAPStore potentially contains several years’ worth of market data, making a redundant configuration impractical. Therefore, if the data in the RAPStore becomes stale due to loss of the data stream or Subscriber, the RAPStore must be loaded from data in the RAPCache. Sybase RAP provides no automatic mechanism to load the RAPStore from the RAPCache. A method to manually load the RAPStore is discussed in the section “Loading the RAPStore from the RAPCache”.
The diagram below illustrates the overall configuration which can be used to substantially enhance availability of market data to trading applications. Similar configurations are possible using the software of third party vendors.
Figure 3-1: Sybase RAP High Availability configuration
Individual High Availability component features are described at the component level in the section “Roles of Sybase RAP components”.