Mastering the Maze: Navigating Complexity in Distributed Systems
Offered By: Conf42 via YouTube
Course Description
Overview
Syllabus
intro
preamble
agenda
what is a distributed system?
what is complexity?
monolithic architecture
disadvantages
microservices architecture
what do distributed systems give us?
challenges, quality attributes
what are main troubles?
unreliable networks
strategy: timeout
strategy: retry
strategy: idempotency
strategy: circuit breaker
concurrency and lost writes
strategy: snapshot isolation
strategy: compare and set
strategy: lease
dual write problem
strategy: transactional outbox
strategy: log tailing
unreliable clocks
availability and consistency
high availability
failure
consistency types
linearizability
strategy: distributed consensus algorithm, e.g. raft
more complexities
eventual consistency
strategy: read from leader
process pauses
strategy: fencing
observability
strategy: distributed tracing
strategy: orchestration over choreography
evolvability and cybernetics principles
systems thinking
feedback loops
adaptability and learning
goal-oriented design
big ball of mud
hierarchy
fallacy: all microservices are the same
strategy: service types
sre principles
infrastructure as code
chaos engineering and testing: jepsen tests
simplicity and measuring complexity
thank you for attending!
Taught by
Conf42
Related Courses
Advanced Operating SystemsGeorgia Institute of Technology via Udacity High Performance Computing
Georgia Institute of Technology via Udacity GT - Refresher - Advanced OS
Georgia Institute of Technology via Udacity Distributed Machine Learning with Apache Spark
University of California, Berkeley via edX CS125x: Advanced Distributed Machine Learning with Apache Spark
University of California, Berkeley via edX