Skip to content

use of chaos engineering experiments to enhance microservice saga resilience

Notifications You must be signed in to change notification settings

mahamtr/microservice-high-resilience

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microservice enhanced Saga pattern for resilience

This project was developed for experimentation in order to enhance system resilience against transient faults, using Saga pattern,RabbitMQ, Kubernetes, and Chaos Engineering.

Features

  • .Net 8 - Latest .Net version (Dec 2023).
  • [Kubernetes] - Used for its self-healing and automatic scaling features.
  • Chaos-Mesh - Used to run Chaos Engineering experiments in order to discover flaws against transient faults in complex systems.
  • Open Telemetry - Used for recollecting traces of distributed transactions.
  • Jaegger Tracing - Used for data visualization of traces of distributed transactions.
  • RabbitMq - Used for decoupling development of microservices and automatic load balancing of application load.
  • MongoDb - Used for datastore, in order to test data integrity in case of failure and rollback of saga

Chaos Engineering Experiments

The following experiments where executed in order to discover flaws and increase system resilience

  • Pod Failure
  • Stress Failure
  • Network Outage

Data Visualization

With distributed transactions, each microservice can be bottle neck. Data visualization facilitates the identification of a bottle neck.

alt text

Results

Results are in research paper in research folder.

About

use of chaos engineering experiments to enhance microservice saga resilience

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published