Projects per year
Abstract
Microservice architectures and design patterns enhance the development of large-scale applications by promoting flexibility. Industrial practitioners perceive the importance of applying architectural patterns but they struggle to quantify their impact on system quality requirements. Our research aims to quantify the effect of design patterns on system performance metrics, e.g., service latency and resource utilization, even more so when the patterns operate in real-world environments subject to heterogeneous workloads. We built a cloud infrastructure to host a well-established benchmark system that represents our test bed, complemented by the implementation of three design patterns: Gateway Aggregation, Gateway Offloading, Pipe and Filters. Real performance measurements are collected and compared with model-based predictions that we derived as part of our previous research, thus further consolidating the actual impact of these patterns. Our results demonstrate that, despite the difficulty to parameterize our benchmark system, model-based predictions are in line with real experimentation, since the performance behaviors of patterns, e.g., bottleneck switches, are mostly preserved. In summary, this is the first work that experimentally demonstrates the performance behavior of microservices-based architectural patterns. Results highlight the complexity of evaluating the performance of design patterns and emphasize the need for complementing theoretical models with empirical data.
Original language | English |
---|---|
Article number | 112183 |
Number of pages | 15 |
Journal | Journal of Systems and Software |
Volume | 218 |
DOIs | |
Publication status | Published - Dec 2024 |
Keywords
- Design patterns
- Microservice architectures
- Performance evaluation
Projects
- 1 Active
-
Mapping the Effectiveness of Automated Software Testing
Aleti, A. & Turhan, B.
13/09/21 → 12/09/25
Project: Research