Distributed Systems 2: RPC / Failure

Finishing RPCs (01:36)

Go Back

Marshalling (01:35)

Go Back

Interface Description Language (IDL) (03:38)

Go Back

IDL + marshalling example (02:07)

Go Back

GRPC (04:22)

Go Back

RPC server implementation (07:08)

Go Back

RPC Client implementation (04:04)

Go Back

RPC non-transparency (06:15)

Go Back

RPC Performance (01:25)

Go Back

RPC Locally (00:57)

Go Back

Network failure (00:51)

Go Back

Message lost (04:13)

Go Back

Message delayed/reordered (01:52)

Go Back

Machine failure: Two Models (02:02)

Go Back

Dealing with machine failure (01:38)

Go Back

Distributed transaction problem (01:27)

Go Back

Distributed transaction example (01:07)

Go Back

Naive distributed transaction (02:19)

Go Back

The centralized solution (02:37)

Go Back

Decentralized solution properties (01:06)

Go Back

Two-phase commit (00:17)

Go Back

Persistent log (00:59)

Go Back

Two-phase commit: roles (03:01)

Go Back

Two-phase commit: phases (01:15)

Go Back

Coordinator decision (00:19)

Go Back

Finishing (00:51)

Go Back

Two-phase commit: blocking (05:51)

Go Back

Two-phase commit messages (00:43)

Go Back

Coordinator State machine (simplified) (01:52)

Go Back

Coordinator failure recovery (01:44)

Go Back

Coordinator State machine (un-simplified) (01:00)

Go Back

Worker state machine (00:52)

Go Back

State machine missing details (01:20)

Go Back

2-phase commit: normal operation (00:53)

Go Back

Some failure cases (01:18)

Go Back