52
Principles of Globally Distributed Systems

Principles of Globally Distributed Systems

  • Upload
    fastly

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Principles of Globally Distributed Systems

Principles of

Globally Distributed Systems

Page 3: Principles of Globally Distributed Systems

Practicality

Page 4: Principles of Globally Distributed Systems

Carlos Baquero Peter Alvaro Peter Bailis

Joseph Hellerstein Marc Shapiro João Leitão

Chris Meiklejohn

Page 5: Principles of Globally Distributed Systems
Page 6: Principles of Globally Distributed Systems
Page 7: Principles of Globally Distributed Systems

Use off-the-shelf

Page 8: Principles of Globally Distributed Systems

Partial Availability

Page 9: Principles of Globally Distributed Systems
Page 10: Principles of Globally Distributed Systems

“Nearly all systems are probabilistic, whether they

realize it or not.”

Page 11: Principles of Globally Distributed Systems
Page 12: Principles of Globally Distributed Systems
Page 13: Principles of Globally Distributed Systems
Page 15: Principles of Globally Distributed Systems

“With high probability” is Fine

Page 16: Principles of Globally Distributed Systems

Failure Independence

Page 17: Principles of Globally Distributed Systems

v1 of Fastly Instant Purge

Page 18: Principles of Globally Distributed Systems

E

D

F

C

A

B

Graph  of  Responsibility

Page 19: Principles of Globally Distributed Systems

E

D

F

C

A

B

Graph  of  Responsibility

Page 20: Principles of Globally Distributed Systems

E

D

F

C

A

B

Graph  of  Responsibility

Page 21: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 22: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 23: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 24: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 25: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 26: Principles of Globally Distributed Systems

Failure Dependence

Page 27: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 28: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 29: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 30: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 31: Principles of Globally Distributed Systems

E

D

F

C

A

B

PURGE

Page 32: Principles of Globally Distributed Systems

How does Load flow?

Page 33: Principles of Globally Distributed Systems

The Internet is both more and less reliable than we think

Page 34: Principles of Globally Distributed Systems

Q: What is a normal amount of jitter on a North American backbone?

Page 35: Principles of Globally Distributed Systems

A: <250μs

Page 36: Principles of Globally Distributed Systems

Normal packetloss is <0.1%

Page 37: Principles of Globally Distributed Systems

Asymmetric Network

Splits

Page 38: Principles of Globally Distributed Systems

Paths are not symmetric

Page 39: Principles of Globally Distributed Systems

Q: How do you see the inbound

path?

Page 40: Principles of Globally Distributed Systems

A: Trick question. You don’t.

Page 41: Principles of Globally Distributed Systems

Consistency

Page 42: Principles of Globally Distributed Systems

CAP

Page 43: Principles of Globally Distributed Systems

Avoid Coordination

Page 44: Principles of Globally Distributed Systems
Page 45: Principles of Globally Distributed Systems

AP

Page 46: Principles of Globally Distributed Systems

https://aphyr.com/posts/313-strong-consistency-models

Page 47: Principles of Globally Distributed Systems

Causality

Page 48: Principles of Globally Distributed Systems

CRDTs

Page 49: Principles of Globally Distributed Systems
Page 50: Principles of Globally Distributed Systems
Page 51: Principles of Globally Distributed Systems

Further Reading

Notes on Distributed Systems for Youngbloods

Fallacies of Distributed Computing

Literally everything on aphyr.com

Publications of the SyncFree group

Page 52: Principles of Globally Distributed Systems

Thanks