~/talk

Architectural patterns of resilient distributed systems

Talkat Full Stack Fest 2016 · 2016-09-05..09-09· [devops-and-delivery, observability]
links:none on file
slides:none on file

Argues that resilience is decided by concrete choices not buzzwords and shows literature and industry evidence for that claim including a 66% harvest example, Google opting for a centralized lock service, and Netflix moving from chaos monkey to real time traffic visualization. Describes tools actually built and used at Fastly: a working instant purge system called Powder Horn implemented with a gossip protocol and protocol hacks, and explains when those approaches succeed, what failures remain, and the operational costs of keeping them running.

AI-written summary · about

  1. 0:00Intro
  2. 0:18Architectural Patterns of Resilient Distributed Systems
  3. 2:03Resilience is the ability of a system to adapt or keep working when challenges occur
  4. 8:12Graceful harvest degradation under faults Randomness to make the worst-case & average-case the same Replication of high-priority data for greater harvest control Degrading results based on client capability
  5. 9:30#2 Decomposition & Orthogonality Decomposing into subsystems independently intolerant to harvest degradation but your application can continue if they fail Only provide strong consistency for the subsystems that need it Orthogonal mechanisms state vs functionality
  6. 13:46Engineering resilience requires a model of safety based on: mentoring responding, adapting, and learning System safety is about what can happen, where the operating point actually is and what we do under pressure
  7. 14:43Engineering system resilience Build support for continuous maintenance Reveal control of system to operators know it's going to get moved replaced, and used in ways you did not intend Think about configurations as interfaces
  8. 15:05Engineering system resilience Build support for continuous maintenance Reveal control of system to operators know it's going to get moved, replaced, and used in ways you did not intend Think about configurations as interfaces
  9. 20:21Thinking about building system resilience using a single discipline is insufficient. We need different strategies 11
  10. 25:08fastly. Powderhorn insights Evolution of our purging system from vi to v3 Used Bimodal Multicast Gossip protocol to provide extremely fast
  11. 27:07Image Opto insights A stateless system is nice but can be tricky Dependencies are hard: customer setup, caching layer, & libraries - we have to be resilient to all of them
  12. 29:45Design error types & their handling carefully Failure detection & system operability are ongoing concerns Mixed-mode & versioning of data structures Validation & system adaptability
  13. 31:44Redundancies are key Redundancies of resources Execution paths. Checks replication of data replay of messages, anti-entropy build resilience Gossip/epidemic protocols Capacity planning matters
  14. 33:01Operations matter Unawareness of proximity to error boundary means we are always guessing Complex operations make systems less resilient & more incident.prone You design operability too!
  15. 42:08Good design is hard. Unknowns are hard to predict. Let the tenets we discussed today guide your redesigns - Me today
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.