Building Highly Available Systems in Erlang
From the description:
Summary
Joe Armstrong discusses highly available (HA) systems, introducing different types of HA systems and data, HA architecture and algorithms, 6 rules of HA, and how HA is done with Erlang.
Bio
Joe Armstrong is the principal inventor of Erlang and coined the term “Concurrency Oriented Programming”. At Ericsson he developed Erlang and was chief architect of the Erlang/OTP system. In 1998 he formed Bluetail, which developed all its products in Erlang. In 2003 he obtain his PhD from the Royal Institute of Technology, Stockholm. He is author of the book “Software for a concurrent world”.
Gives the six (6) rules for highly available systems and how Erlang meets those six (6) rules.
- Isolation rule: Operations must be isolated
- Concurrency: The world is concurrent
- Must detect failures: If can’t detect, can’t fix
- Fault Identification: Enough detail to do something.
- Live Code Upgrade: Upgrade software while running.
- Stable Storage: Must survive universal power failure.
Quotes: Why Computers Stop and What Can Be Done About It, Jim Gray, Technical Report 85.7, Tandem Computers 1985, for example.
Highly entertaining and informative.
What do you think of the notion of an evolving software system?
How would you apply that to a topic map system?