Skip to main content

Distributed Systems

15h 35m 10s
English
Paid

Course description

With the growth in the number of computers, they have not only increased in quantity, but also became distributed. If previously businesses aimed to purchase increasingly powerful mainframes, today even small applications often run on multiple machines simultaneously. Distributed systems is the science of making decisions related to trade-offs in such an architecture.
Read more about the course

I would like to say that this course will give you the superpower to build any distributed systems… but you will quickly realize that it's not that simple :)

More realistically - my goal: to give you the calmness to accept constraints that cannot be avoided, courage to change what can be changed, and wisdom to distinguish one from the other.

A bit about the basic knowledge

Distributed systems are the intersection of operating systems, networks, and databases.

For most students, it makes sense to leave this topic for later. In the course, I will assume that you are familiar with the basic concepts of these areas.

But! If you can't wait to dive into the topic - don't wait. You can always start here and then, if necessary, return to other courses to fill in the gaps.

Course structure

The course is built around the structure of the excellent textbook Designing Data-Intensive Applications (we will refer to it as DDIA).

Though not an academic work in the classical sense, it beautifully combines both principles and practice of building distributed systems. Kleppmann brings much-needed pragmatism to this topic, without sacrificing theoretical depth. This is my favorite book on the subject overall.

Comment from Oz:

Currently, I am actively working on the course and conducting live seminars where I discuss the main concepts.

Recordings are posted as they are conducted, and all active CS Primer subscribers can participate. Even if you do not attend the live sessions - I recommend keeping an eye on the schedule and taking the course synchronously.

Distributed systems are a more conceptual topic, so we will rely on seminars, a project component (for example, implementing a distributed key-value store), as well as system design problem-solving.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 17 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: 001 - KV store introduction

All Course Lessons (17)

#Lesson TitleDurationAccess
1
001 - KV store introduction Demo
01:03:14
2
002 - Introduction to distributed systems
01:25:25
3
003 - How to study distributed systems
11:16
4
004 - Klepmanns three objectives of distributed systems
06:53
5
005 - How Complex Systems Fail
06:00
6
006 - Do you really need a distributed system
05:59
7
007 - Service oriented architecture at Amazon
05:04
8
008 - Wire formats
01:26:49
9
009 - API patterns REST SOAP RPC GraphQL
56:30
10
010 - Replication
01:32:23
11
011 - Partitioning
01:15:08
12
012 - Models of consistency
01:17:34
13
013 - Consensus
01:24:09
14
014 - Dictionary search
52:51
15
015 - Thesaurus scraper
01:19:40
16
016 - Log aggregator
01:22:30
17
017 - Image rescaler
01:03:45

Unlock unlimited learning

Get instant access to all 16 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Cisco CCNA 200-125 – The Complete Guide to Getting Certified

Cisco CCNA 200-125 – The Complete Guide to Getting Certified

Sources: udemy
If you want to jumpstart your career in IT and networking by acing the Cisco Certified Network Associate CCNA exam, then this course is for you! It gives you a
38 hours 48 minutes 8 seconds
Machine Learning Fundamentals

Machine Learning Fundamentals

Sources: LunarTech
Advance in your machine learning career with confidence. Master the key ML fundamentals that are in demand by employers and acquire the skills necessary for...
4 hours 5 minutes 9 seconds
NativeScript + Angular: Build Native iOS, Android & Web Apps

NativeScript + Angular: Build Native iOS, Android & Web Apps

Sources: udemy
With Angular (2+), you can already build highly reactive and engaging web apps. Wouldn't it be amazing to use that same tech stack and knowledge to build real native mobile apps...
20 hours 11 minutes 23 seconds
Microservices Masterclass

Microservices Masterclass

Sources: David Farley
Microservices are a powerful approach to creating scalable software. However, despite the seemingly simple ideas, in practice, this architecture is full of...
3 hours 25 minutes 47 seconds
CodeBreakthrough Vault

CodeBreakthrough Vault

Sources: Caleb Curry
CodeBreakthrough Vault is an exclusive course designed to elevate you to a new level in your life and engineering career. Previously, this knowledge and...
62 hours 23 minutes 45 seconds