Traditional applications are built on an orchestration principle. There is a ‘conductor’ which initiates requests, collects the responses and provides the answer. An alternative is a choreography whereby no single person or group is instructed during the play. Every participant in the dance, knows what to do at which point in time. In Software, a ‘Choreographed’ architecture could be defined as domains able to perform function, based on ‘timed’ signals.
In this presentation, we’ll have a look at a concrete example of these ideas at a new fintech company called BloX, a subsidiary of cryptocurrency trading platform BTC Direct. Their need for a scalable, modular and auditable architecture, led them to choose this architecture for there systems. These are currently being developed by Trifork, using the open source Axon Framework and other AxonIQ components. The system will be fully cloud based, running on the Google Kubernetes Engine.
We’ll look at an overview of this architecture, and then zoom in to some specific architectural patterns that occur here, such as interactions between distinct sub-domains, Time-based events etc..