intermediateMeet Axon Framework & Axon Server

What is the difference between Axon Framework and Axon Server, and why are they separate components?

Axon Framework is a Java library added as a dependency to a Spring Boot service; it provides annotations like @Aggregate, @CommandHandler, and @EventSourcingHandler that you code against directly inside your application. Axon Server is separate, standalone infrastructure that your service connects to over gRPC; it acts as both the durable event store and the message router that delivers commands, events, and queries to the correct handlers, potentially across several different microservices. They're kept separate so that the routing and storage concerns — which need to be shared and consistent across an entire system of services — aren't duplicated inside every individual service's own process. A service can be redeployed or restarted without losing any event history, because that history lives in Axon Server, not in the service's own memory or local database.

Ready to master this question?

Generate a complete walkthrough — background, the full answer in plain language, a working code example explained line by line, a real-world scenario, common mistakes, and how this same question gets asked in different ways.

Sign in to generate a response

Next Step

Continue to How does a choreography saga coordinate a multi-step business process without any central coordinator?← Back to all Event-Driven Microservices questions