Slide 1

Slide 1 text

Observability & Control Theory

Slide 2

Slide 2 text

Question

Slide 3

Slide 3 text

Question

Slide 4

Slide 4 text

Question

Slide 5

Slide 5 text

Monitoring!! Answer

Slide 6

Slide 6 text

● You monitor what you know ● You react after it has failed. ● What about unknown-unknowns? ● Doesn’t avoid failures. ● Tells something broke and now it isn’t. ● Always a comparative operator. Question: What is Monitoring?

Slide 7

Slide 7 text

● Systems are Distributed. ● What about? ○ Accuracy ○ Latency ○ Correctness ○ Consistency ● It’s till or from Now. What are we missing?

Slide 8

Slide 8 text

Monitoring Timeline Late 2000s ● SOA Early 2010 ● Microservices 1990s ● Servers 2000s ● Monolith Now Lambda

Slide 9

Slide 9 text

The REAL question If a tree falls in a forest and nobody heard it, did it make a sound?

Slide 10

Slide 10 text

The REAL answer All falling trees yield Logs.

Slide 11

Slide 11 text

Software, by default, is opaque. To debug & control a running system, you need observation pre-built.

Slide 12

Slide 12 text

Observability

Slide 13

Slide 13 text

Need - Debugging - Pattern Detection

Slide 14

Slide 14 text

No content

Slide 15

Slide 15 text

Unlike monitoring, observability is not failure-centric. If your job allows, you can use it to understand system performance, just-like-that. ¯\_(ツ)_/¯

Slide 16

Slide 16 text

Stability

Slide 17

Slide 17 text

Control Theory

Slide 18

Slide 18 text

Control Theory

Slide 19

Slide 19 text

Example

Slide 20

Slide 20 text

TCP Flow Control

Slide 21

Slide 21 text

TCP Flow Control

Slide 22

Slide 22 text

TCP Congestion Control

Slide 23

Slide 23 text

TCP Congestion Control

Slide 24

Slide 24 text

Practical Applications

Slide 25

Slide 25 text

● Constrained Optimization Problems ● Constraint Scaling Problems Practical Applications

Slide 26

Slide 26 text

Auto-Scaling

Slide 27

Slide 27 text

Cache

Slide 28

Slide 28 text

Gateway

Slide 29

Slide 29 text

Load-Balancer

Slide 30

Slide 30 text

Progressive Streaming

Slide 31

Slide 31 text

Software, by default, is opaque. To debug & control a running system, you need observation pre-built.

Slide 32

Slide 32 text

Thank You - Piyush Verma