What is Axon Server Enterprise?
Axon Server Enterprise in one of the two editions of Axon Server. It contains all of the features of the free Standard edition. Additionally, it contains features to make it suitable for use in mission-critical, enterprise use cases. And, as a commercial product, it comes with SLA-backed support by AxonIQ.
Axon Server Enterprise can be deployed as a cluster of instances (usually 3 or 5) to guarantee high availability. These instances (usually called “nodes”) replicate data between them. The client applications using Axon Server Enterprise are aware of the various nodes in existence and will connect another one if the node they’re currently connected to becomes unreachable. For maximum reliability, we recommend setting up the cluster in such a way that nodes are located in separated data centers. In this set-up, even the complete loss of a data center doesn’t cause loss of Axon Server availability or loss of data.
Axon Server Enterprise allows the definition of an arbitrary number of logical contexts on a single cluster. This feature is comparable to defining multiple logical databases on a single RDBMS instance. It allows for strong segregation without incurring the overhead of deploying and managing a full instance in each case. There are many potential use cases for this feature. Axon Server contexts may be used for “bounded contexts” in the DDD sense, which has given the feature its name. Customers also use this feature for multi-tenancy (context per tenant), access control, and differentiated retention policies.
Axon Server Enterprise uses the Raft Consensus Algorithm to implement a fault-tolerant distributed system. This is a well known, documented algorithm also underpinning the fault tolerance in platforms such as Kubernetes and Cloud Foundry. It can handle a wide range of network and host failure scenarios while keeping the cluster available to clients and preserving integrity. Something that is verified every day in AxonIQ's testing infrastructure.
When using Axon Server Enterprise, transactions will not be confirmed to the client until a majority of the nodes have confirmed the transaction individually. Combined with spreading the cluster nodes across data centers ("availability zones" when using a public cloud provider), this gives very strong protection against data loss.
For event storage, Axon Server Enterprise has been designed with a leader/replicas clustering architecture (as opposed to the peer-to-peer architecture as implemented in e.g. Cassandra). At any point in time, a single node is the leader and has the responsibility to verify transactions for consistency and integrity, after which the replicas will store a copy of the transaction to guarantee durability. When the leader becomes unavailable, a leader election protocol will ensure that a new node takes up this responsibility. For the event sourcing use case, the leader/replica architecture is the most efficient implementation of a reliable, fault-tolerant cluster.
Even though Axon Server Enterprise uses a single-leader concept, there are many mechanisms that allow for horizontal scalability. First of all, the single-leader mechanism is only used where it is needed, which is for event storage. For routing of command and query messages, an Axon Server Enterprise cluster functions in a peer-to-peer fashion. Also, the leader role for storing events is assigned at the context level rather than the cluster level. This means that when using multiple contexts, different nodes will take up the leadership role for different contexts, which also balances the cluster load.
Storage space per context
In Axon Server Enterprise, each context has its own storage space on disk (a directory). In this directory, you’ll find the standard Axon Server storage structure: event and snapshot segments with the associated index files. This clear separation gives a lot of flexibility in managing different contexts in different ways, in terms of retention periods, encryption, back-up policies and storage medium (fast, expensive SSDs or slower, cheaper HDDs).
and find out useful news on Axon releases, invitations to AxonIQ events and other news