John Allspaw discusses fault tolerance, anomaly detection and anticipation patterns helpful to create highly available and resilient systems.
Daniel Jacobson covers the history of Netflix’s APIs, adaptation for the cloud, development and testing, resiliency, and the future of their APIs.
Michael Brunton-Spall talks about various types of system failure that can happen, sharing the lessons learned at the Guardian and measures taken to prevent and mitigate failure.
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.
Nathan Marz explain Storm, a distributed fault-tolerant and real-time computational system currently used by Twitter to keep statistics on user clicks for every URL and domain.
Jonas Bonér introduces Akka, a JVM platform that wants to address the complex problems of concurrency, scalability and fault tolerance using Actors, STM and self-healing from crashes.
Justin Sheehy talks about failure and the need to prepare for it, giving some real life examples along with techniques implemented in Riak to make it resilient to faults.
Joe Armstrong explains through Erlang examples that message passage concurrency represents the foundation of scalable fault-tolerant systems. Some of his presentation’s nuggets are: using the wrong abstractions makes life artificially difficult; it’s not about objects, it’s about messages; no shared memory; messages enforce isolation if communication is asynchronous; it’s all about protocols.
Michael Nygard encourages us to have a failure oriented mindset in order to succeed. He presents many anti-pattern examples that lead to systems instability and ultimately lead to failure. He also presents the corresponding stability patterns that should be used instead.
Ulf Wiger shows typical Erlang programs, patterns that scale well on multicore and patterns that don't, profiling and debugging parallel applications and ensuring correct behaviour with QuickCheck.
In this talk from RubyFringe, Damien Katz explains what drove him to create CouchDB, why he chose Erlang and more.
Picture a system so large it cannot be comprehended. Can such a system be "designed" in any conventional sense? Will machines help design it? Will it help design itself? How will it keep running? Will it be alive? The foundations of computing are about to change. In this talk, Richard P. Gabriel explores why and how.