Axon Framework
Axon Framework
Axon Framework is a CQRS development framework for Java developed by Trifork.
According to Trifork, Axon Framework addresses: [1]
Scalability. Axon decouples application components to enable linear dynamic scaling. Logical components are separated within the architecture in a service-oriented manner and coupled using an asynchronous message bus. This enables components to be physically spread amongst different servers and hereby realizing linear scaling.
Agility. Axon Framework promotes loose coupling between components by using components in an application. This ensures that changes in one component will not directly affect behavior in another component. Besides making components easier to adjust, it also makes adding new components easy. By connecting to the message bus, addition of new components doesn’t require modification of existing components.
Performance. Axon Framework distinguishes between query/read and update/write components. Information structure in these components can be optimized for the purpose at hand. As a result, query components have quick access to data that is already structured for its purpose. This is a performance benefit, but also allows scaling for a specific component type. With the majority of requests in many applications involving the reading of data, Axon Framework allows developers to separately optimize components.
Security. Axon Framework provides authentication, authorization and auditing capabilities out of the box. Not only can unauthorized access be prevented, unauthorized use can be tracked.
Integration. Axon Framework works with a message bus. Users add components which provides integration with 3rd party systems without intruding the original application behavior. This holds for both in- and outbound 3rd party systems. This architecture makes integration with several external systems possible without increasing complexity.
License
Axon Framework is licensed under the Apache 2 license. [2]