How does fault tolerance work in Erlang
summary
Erlang processes are C-level records with a pid, mailbox, process dictionary, stack and heap so each process has its own memory and when it dies its memory is freed — process is just data. The BEAM uses preemptive scheduler threads that run, pause and park waiting processes so sleeping or blocked processes don’t stall the system. OTP supervisor tree supervisors kill and restart crashed processes to return components to a known safe state, and adding schedulers (cores or nodes) increases parallelism.
AI-written summary · about
chapters (5)
- 0:00Start
- 7:40What is process isolation
- 11:56What is a scheduler
- 15:35The scheduling flow
- 24:12How supervisors react to failure
related talks
01h 01mThe Erlang Ecosystem
48mGetting to Know the Erlang Virtual Machine, the BEAM
51mThe Erlang VM or How I Started Loving Parallel Progamming
42mThe Soul of Erlang and Elixir
53mIdioms for Building Distributed Fault-tolerant Applications with Elixir
10mBack to the Future
46mThe Do's and Don'ts of Error Handling
44mAfter The Crash
