2022 · 10 citations · 14 references
EngineeringComputer EngineeringComputer SystemsFault-tolerant ComputingFault-tolerant SystemsSystems ArchitectureFault InjectionMicroservices ArchitectureResilience AssessmentResilience EngineeringResilient System DesignMonolithic ArchitectureResilienceResilience MechanismsResilience SimulationScenario-based TestingScenario-based ValidationSystem ResilienceSystem Resilience Assessment
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.
14
Harshit Gupta, Amir Vahid Dastjerdi, Soumya K. Ghosh et al. · Software Practice and Experience · 2017 · 1.6K citations · Full text
A workload characterization study of the 1998 World Cup Web site
Martin Arlitt, Tai Jin · IEEE Network · 2000 · 765 citations
Johannes Thönes · IEEE Software · 2015 · 470 citations · Full text