Increased resilience compared to monolithic architectures is both one of the key promises of microservice-based architectures and a big challenge, e.g., due to the systems’ distributed nature. Resilience assessment through simulation requires fewer resources than the measurement-based techniques used in practice. However, there is no existing simulation approach that is suitable for a holistic resilience assessment of microservices comprised of (i) representative fault injections, (ii) common resilience mechanisms, and (iii) time-varying workloads. This paper presents MiSim — an extensible simulator for resilience assessment of microservice-based architectures. It overcomes the stated limitations of related work. MiSim fits resilience engineering practices by supporting scenario-based experiments and requiring only lightweight input models. We demonstrate how MiSim simulates (1) common resilience mechanisms — i.e., circuit breaker, connection limiter, retry, load balancer, and autoscaler — and (2) fault injections — i.e., instance/service killing and latency injections. In addition, we use TeaStore, a reference microservice-based architecture, aiming to reproduce scaling behavior from an experiment by using simulation. Our results show that MiSim allows for quantitative insights into microservice-based systems’ complex transient behavior by providing up to 25 metrics.
%0 Conference Paper
%1 FrankWagnerHakamianStraesserVanHoorn2022MiSim
%A Frank, Sebastian
%A Wagner, Lion
%A Hakamian, Alireza
%A Straesser, Martin
%A van Hoorn, Andre
%B 2022 IEEE 22nd International Conference on Software Quality, Reliability and Security (QRS)
%D 2022
%I IEEE
%K descartes microservice resilience simulation t_full
%P 1014-1025
%R 10.1109/QRS57517.2022.00105
%T MiSim: A Simulator for Resilience Assessment of Microservice-based Architectures
%U https://doi.org/10.1109/QRS57517.2022.00105
%X Increased resilience compared to monolithic architectures is both one of the key promises of microservice-based architectures and a big challenge, e.g., due to the systems’ distributed nature. Resilience assessment through simulation requires fewer resources than the measurement-based techniques used in practice. However, there is no existing simulation approach that is suitable for a holistic resilience assessment of microservices comprised of (i) representative fault injections, (ii) common resilience mechanisms, and (iii) time-varying workloads. This paper presents MiSim — an extensible simulator for resilience assessment of microservice-based architectures. It overcomes the stated limitations of related work. MiSim fits resilience engineering practices by supporting scenario-based experiments and requiring only lightweight input models. We demonstrate how MiSim simulates (1) common resilience mechanisms — i.e., circuit breaker, connection limiter, retry, load balancer, and autoscaler — and (2) fault injections — i.e., instance/service killing and latency injections. In addition, we use TeaStore, a reference microservice-based architecture, aiming to reproduce scaling behavior from an experiment by using simulation. Our results show that MiSim allows for quantitative insights into microservice-based systems’ complex transient behavior by providing up to 25 metrics.
@inproceedings{FrankWagnerHakamianStraesserVanHoorn2022MiSim,
abstract = {Increased resilience compared to monolithic architectures is both one of the key promises of microservice-based architectures and a big challenge, e.g., due to the systems’ distributed nature. Resilience assessment through simulation requires fewer resources than the measurement-based techniques used in practice. However, there is no existing simulation approach that is suitable for a holistic resilience assessment of microservices comprised of (i) representative fault injections, (ii) common resilience mechanisms, and (iii) time-varying workloads. This paper presents MiSim — an extensible simulator for resilience assessment of microservice-based architectures. It overcomes the stated limitations of related work. MiSim fits resilience engineering practices by supporting scenario-based experiments and requiring only lightweight input models. We demonstrate how MiSim simulates (1) common resilience mechanisms — i.e., circuit breaker, connection limiter, retry, load balancer, and autoscaler — and (2) fault injections — i.e., instance/service killing and latency injections. In addition, we use TeaStore, a reference microservice-based architecture, aiming to reproduce scaling behavior from an experiment by using simulation. Our results show that MiSim allows for quantitative insights into microservice-based systems’ complex transient behavior by providing up to 25 metrics.},
added-at = {2022-11-20T00:04:57.000+0100},
author = {Frank, Sebastian and Wagner, Lion and Hakamian, Alireza and Straesser, Martin and van Hoorn, Andre},
biburl = {https://www.bibsonomy.org/bibtex/21233111c53b378ba24d9d000bdf82717/se-group},
booktitle = {2022 IEEE 22nd International Conference on Software Quality, Reliability and Security (QRS)},
doi = {10.1109/QRS57517.2022.00105},
interhash = {f18b4a37efd7bb3858677846e1eebb49},
intrahash = {1233111c53b378ba24d9d000bdf82717},
keywords = {descartes microservice resilience simulation t_full},
pages = {1014-1025},
publisher = {IEEE},
timestamp = {2023-04-03T11:02:00.000+0200},
title = {MiSim: A Simulator for Resilience Assessment of Microservice-based Architectures},
url = {https://doi.org/10.1109/QRS57517.2022.00105},
year = 2022
}