Abstract

As cloud infrastructures gain popularity, new concepts and design patterns such as Command Query Responsibility Segregation (CQRS) and Event Sourcing (ES) promise to facilitate the development of scalable applications. Despite recent research and the availability of many blogs and tutorials devoted to these topics, few reports on real-world implementations exist that provide experimental insight into their scalability. To bridge this gap, researchers developed an architecture that exploits both CQRS and ES in accordance with Reactive Manifesto guidelines. Using that architecture, they implemented a prototype interactive flight-scheduling application to investigate this approach’s scalability. A performance evaluation in a cloud environment of 15 virtual machines demonstrated the CQRS and ES patterns’ horizontal scalability, observed independently for the application’s read and write models. This article explains how to assemble this type of architecture, first on a conceptual level and then with specific technologies including Akka, Cassandra, Kafka, and Neo4J. A reference implementation is available as an open-source project. This approach provides many interesting advantages without compromising performance, so its rapid adoption by the industry seems likely.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call