Aggregate architecture simulation in event-sourcing applications using layered queuing networks

Publication date

2020-04-20

Authors

Maddodi, Gururaj
Jansen, SlingerORCID 0000-0003-3752-2868ISNI 000000039050399X
Overeem, Michiel

Editors

Advisors

Supervisors

Document Type

Part of book
Open Access logo

License

taverne

Abstract

Workload intensity in terms of arrival rate and think-time can be used accurately simulate system performance in traditional systems. Most systems treat individual requests on a standalone basis and resource demands typically do not vary too significantly, which in most cases can be addressed as a parametric dependency. New frameworks such as Command Query Responsibility Segregation and Event Sourcing change the paradigm, where request processing is both parametric dependent and dynamic, as the history of changes that have occurred are replayed to construct the current state of the system. This makes every request unique and difficult to simulate. While traditional systems are studied extensively in the scientific community, the latter is still new and mainly used by practitioners. In this work, we study one such industrial application using Command Query Responsibility Segregation and Event Sourcing frameworks. We propose new workload patterns suited to define the dynamic behavior of these systems, define various architectural patterns possible in such systems based on domain-driven design principles, and create analytical performance models to make predictions. We verify the models by making measurements on an actual application running similar workloads and compare the predictions. Furthermore, we discuss the suitability of the architectural patterns to different usage scenarios and propose changes to architecture in each case to improve performance.

Keywords

Command-query responsibility segregation, Domain-driven design, Event sourcing, Software architecture variation, Software performance engineering, Taverne

Citation

Maddodi, G, Jansen, S & Overeem, M 2020, Aggregate architecture simulation in event-sourcing applications using layered queuing networks. in ICPE '20: Proceedings of the ACM/SPEC International Conference on Performance Engineering. Association for Computing Machinery, pp. 238-245. https://doi.org/10.1145/3358960.3375797