Axon is ready to meet even the most demanding enterprise requirements like the most efficient scaling of event storage, security, clustering, load-balancing, service discovery, globally distributed data centers, third-party integration, metrics, and monitoring. Contact us with any questions you may have.
DDD, CQRS, and Event Sourcing
CQRS is a design pattern that originates in DDD (Domain-Driven Design) and emphasizes strictly separating reads from updates in the application. Event Sourcing is a closely related technique that stores states as a series of events instead of only keeping track of the latest data. Axon is the best-in-class Java solution to help you easily implement these proven patterns, particularly in microservice environments.
Evolutionary Event-driven Microservices
Axon enforces location transparency in its core APIs. Axon allows components to communicate through three different types of decoupled messages: commands, queries, and events, each with distinct routing patterns. By enforcing message-centric separation throughout all components in an application, Axon ensures applications can be easily physically separated into microservices and scaled out at all times as needed, without any changes to business logic. In addition, Axon transparently handles distributed communication, efficient routing, automatic tuning, scaling, and discovery without significant infrastructure configuration. These are configuration complexities that often stand in the way of microservices adoption. All you need to do is add a new application node, and Axon takes care of the rest.
Focus on Business Logic
It is possible to write homemade solutions to CQRS, Event Sourcing, and distributed messaging by putting together general-purpose components. Indeed earlier versions of the Axon Framework made it possible to meet many infrastructure needs with off-the-shelf, third-party, general-purpose components. For example, it is possible to use a relational database or MongoDB as an event store. It is possible to combine JGroups, Spring Cloud, AMQP, or Kafka to communicate between Axon components distributed across different application nodes. The problem is that putting together these various bits of mutually unrelated infrastructure to work in an application is complex, time-consuming, expensive, brittle, hard to monitor, and hard to maintain. Axon provides a complete production-ready proven solution to most non-functional concerns so you can focus on business logic.
Axon is ready to meet even the most demanding enterprise requirements like the most efficient scaling of event storage, security, clustering, load-balancing, service discovery, globally distributed data centers, third-party integration, metrics, and monitoring. Axon accomplishes these goals, especially through Axon Server Enterprise and our commercial feature packs built on top of our open-source core.