Replication tool (RT) is intended to provide continuously updated copies of FIX logs of the FIXAntenna-based application (e.g. FIXEdge).
It consists of two applications: Subscriber and Publisher. Subscriber asks Publisher for log files and stores them in a local folder in a message-by-message manner. The admin tool depending on command-line options can be used as an RT mode manager.
The package consists of an executable and several script files (cmd for Windows platform and a shell script for *nix platforms). There is a possibility to install the executable as a Windows service within itself if required.
Real-time data synchronization
Logs files in subscriber’s storage are updated in real time. The set of received FIX messages is added to the subscriber’s log files in a configured time interval.
Usage as a Disaster Recovery tool
RT batches the messages and is suitable for geo-replication. If the primary FIX engine crashes, the backup FIX engine will recover the sessions from the replicated logs to continue processing FIX messages without data loss.
Work in one of three modes:
The user can configure the needed mode for work.
Usage as a FIX logs archive
RT might be useful in configuring a FIX logs archives on subscriber's computer.
Multiple FIX logs storage
As a publisher can communicate with several subscribers, several log storages can be configured on discrete computers.
Support for other platforms is available on demand
Main mode diagrams
There are two most commonly used Replication tool modes.
Disaster recovery mode
One of the major uses of Replication tool is disaster recovery. In this case, the Replication tool is used to synchronize the FIX logs between different datacenters
to increase the fault-tolerance of the system. This usage is represented by the following diagram.
The FIXAntenna-based application and the Replication tool are deployed on two nodes in the different datacenters. At any given time, one of them has the main role and handles
all the traffic (Node 1 on the diagram) while another is backup (Node 2 on the diagram). Node 1 runs a FIXAntenna-based application and the Replication tool server.
Node 2 runs the Replication tool client. It connects to the server and requests the last known messages from Node 2. The Replication tool server monitors the log
files and sends the messages to the Replication tool client. When the Replication tool client receives messages from the Replication tool server, it writes them to the files in the
If Node 1 goes offline, the Support personnel switches Node 2 to the main mode, stops the Replication tool client and starts a FIXAntenna-based application
and the Replication tool server. The FIXAntenna-based application sees the logs written earlier by the Replication tool client and uses them to continue the FIX sessions.
The system works and clients need to reconnect and continue their FIX sessions. Message replication between the datacenters is not synchronous, so some clients messages might be lost.
The recovery of them is handled via the FIX protocol retransmission starting from the sequence number of the last processed (replicated) message.
When the primary site become available , Node 1 goes back online in backup mode. It needs to get the messages that were received/sent and handled by Node 2.
Replication tool client connects to Node 2 and requests the messages. First, it receives the messages that received and sent before Node 1 started; then, it receives new messages as they are received or sent by the FIXAntenna-based application on Node 2.
Multiple FIX logs replication
Replication tool allows to configure multiple FIX log storage in distinct computers.
Several instances of Replication tool subscriber can be configured on distinct computers. Replication tool subscribers can batch FIX logs from Replication tool publisher.