Market Data

Market Data or any other ticking information that can be shared is a standard use case that follows a traditional fan-out model.

The advantage we are looking for here is that a single message from a backend system is replicated out to all the users that have subscribed to each relevant topic.

Again we see that the Shared Topic Handler is simply a router which in most cases is simply passing data from the backend queue to the relevant Shared Topic.

The goal here is simplicity and most of the work around subscribing, unsubscribing and queueing is handled by the rubris-io library.

Click to enlarge

The example above also shows the horizontal scale out we can achieve using this approach by simply adding more servers.

Topics for Shared Data

It is worth pointing out that topics for the shared data are entirely arbitrary. This means that we can model almost anything on a topic and although traditionally it would be a stock symbol or ISIN for example, we do not have to restrict ourselves to this.