SLIDE 1 ORCAS: Efficient Resilience Benchmarking
- f Microservice Architectures
André van Hoorn Aldeida Aleti Thomas F. Düllmann Teerat Pitakrat
9th Symposium on Software Performance (SSP 2018) November 08, 2018. Hildesheim
SLIDE 2 Previously Presented at ISSRE 2018
André van Hoorn, Aldeida Aleti, Thomas F. Düllmann, Teerat Pitakrat: ORCAS: Efficient Resilience Benchmarking of Microservice Architectures. ISSRE 2018
SLIDE 3 3
Resilience Antipattern
E1 E2
M1 M2 M3
DB
“Recurring solution to common problem with negative consequences for the system”
(Brown et al. Antipatterns: Refactoring Software, Architectures, and Projects in Crisis. John Wiley & Sons, Inc., 1998)
Integration Points Slow Responses Cascading Failures
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 4 4
Resilience Pattern Example: Circuit Breaker
E1 E2
M1 M2 M3
DB
Circuit Breaker
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 5
- How to accept failures? – Learning by doing:
Intentionally inject failures into the production system
Game Day exercises Simian Army for AWS
Resilience Benchmarking – aka Chaos Engineering
“Chaos Engineering is the discipline of experimenting on a distributed system in order to build confidence in the system’s capability to withstand turbulent conditions in production.” — Principles of Chaos
5 van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 6 „
“Current resilience benchmarking practice is inefficient.”
André et al.
Goal: Make it more efficient!
6 van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 7 Leverage relationship between resilience patterns, antipatterns, and fault injections Consider software architectural knowledge to generate experiments Combine model-based (simulations) and measurement-based („real“) resilience experiments
7
Idea of the Project
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 8 8
Envisioned Framework
Architectural Information System extraction
- Services, deployment, (remote) interactions
- Patterns and anti-patterns
- Criticality of services
- Steady-state metrics
Static and dynamic analysis + manual enrichment
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 9 9
Envisioned Framework
Architectural Information System extraction Orcas Decision Engine input
- Services, deployment, (remote) interactions
- Patterns and anti-patterns
- Criticality of services
- Steady-state metrics
Static and dynamic analysis + manual enrichment Knowledge and algorithms – „the magic“
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 10 10
Envisioned Framework
Orcas Decision Engine Architectural Information System extraction Experiment
real
input generation execution
Workload Faultload
results
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 11 11
Envisioned Framework
Orcas Decision Engine Architectural Information System extraction Experiment
real
input generation execution
Workload Faultload
Experiment
sim
System Simulation generation results input input
Workload Faultload
results
van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 12 Current and Next Steps
- PoC implementation
- Evaluation of injection frameworks
- Simulator extensions
- Developing „the magic“
- Experimental evaluation
- Industry case study (?)
12 van Hoorn et al.: Efficient Resilience Benchmarking of Microservice Architectures
SLIDE 13 Advertisement