Slide 1

Slide 1 text

Finding the Best Configuration in Distributed Architectures through Genetic Algorithms

Slide 2

Slide 2 text

Passionate by Chaos Engineering YURY NIÑO ROA Cloud Infrastructure Engineer Site Reliability Engineer Advocate www.sitereliabilityengineering.co www.ingenieriadelcaos.com www.yurynino.com

Slide 3

Slide 3 text

03 The problem! The Solution! 02 Genetics Algorithms 01 AGENDA The problem! Distributed Architectures Circuit Breaker

Slide 4

Slide 4 text

DISTRIBUTED ARCHITECTURES

Slide 5

Slide 5 text

DISTRIBUTED ARCHITECTURES 1990s 2000s 2010s PRE-SOA Monolithics Tight Coupling Each change has unanticipated effects. Traditional SOA Looser Coupling Components must be coordinated. Microservices Decoupled Components take advantage of CI/CD www.yurynino.com www.sitereliabilityengineering.co

Slide 6

Slide 6 text

DISTRIBUTED ARCHITECTURES That is the promise But the reality is … Netflix Twitter www.yurynino.com www.sitereliabilityengineering.co

Slide 7

Slide 7 text

The infrastructure required by a software system can be as complex as the architecture itself. Every production failure is unique. www.yurynino.com www.sitereliabilityengineering.co

Slide 8

Slide 8 text

Butterfly Spiderman THE PROBLEM www.yurynino.com www.sitereliabilityengineering.co

Slide 9

Slide 9 text

Slow Responses Cascading Failures MORE PROBLEMS www.yurynino.com www.sitereliabilityengineering.co

Slide 10

Slide 10 text

THE SOLUTION www.yurynino.com www.sitereliabilityengineering.co

Slide 11

Slide 11 text

CIRCUIT BREAKER HAS A CHALLENGE

Slide 12

Slide 12 text

CIRCUIT BREAKER Taken from Release it! www.yurynino.com www.sitereliabilityengineering.co

Slide 13

Slide 13 text

THE CHALLENGE Taken from Release it! www.yurynino.com www.sitereliabilityengineering.co

Slide 14

Slide 14 text

WHAT IS A PROPER CONFIGURATION?

Slide 15

Slide 15 text

GENETIC ALGORITHMS

Slide 16

Slide 16 text

Inspired by the Evolutionary Computation By imitating the process of natural selection and reproduction, genetic algorithms can produce high-quality solutions for various problems involving search, optimization, and learning. www.yurynino.com www.sitereliabilityengineering.co

Slide 17

Slide 17 text

Genetic Algorithms seek to find the optimal solution for a given problem. ● Maintain a population of candidate solutions, called individuals, for that given problem. ● These candidate solutions are iteratively evaluated and used to create a new generation of solutions. ● Those who are better at solving this problem have a greater chance of being selected and passing to the next generation!

Slide 18

Slide 18 text

Initial Population Evaluate Selection Crossover Mutation Termination Criterion? Solution Set THE METHODOLOGY

Slide 19

Slide 19 text

Initial Population Selection Crossover THE METHODOLOGY

Slide 20

Slide 20 text

Initial Population Evalua te Selection Mutation THE METHODOLOGY Evaluate

Slide 21

Slide 21 text

Initial Population Evaluate Selection Crossover Mutation Termination Criterion? Solution Set THE METHODOLOGY

Slide 22

Slide 22 text

Mutation THE METHODOLOGY

Slide 23

Slide 23 text

Initial Population Evaluate Selection Crossover Mutation Termination Criterion? Solution Set THE METHODOLOGY

Slide 24

Slide 24 text

“It is not the strongest of the species that survives, nor the most intelligent, but the one who is most adaptable to change.” Charles Darwin

Slide 25

Slide 25 text

Thanks! Yury Niño Roa www.yurynino.com yurynino