Instead of just listing off the myriad interesting ideas in the Amazon Dynamo paper, I decided it would be more interesting for both myself and readers to actually walk through implementing a distributed key-value store and incrementally evolve it using the ideas introduced in the Amazon Dynamo paper.
A quick look at a slightly novel solution for balancing load across process groups when building Erlang systems.
This next installment in the Introduction to BeepBeep series takes a look at pairing CouchDB with BeepBeep to begin consolidating the necessary toolkit to construct plausible web applications.
This article looks at a couple of approaches for implementing systems with recurring events using message-passing based concurrency (Erlang and Clojure are used in code snippets). In particular it looks at the ping-pong, circle, coordinator and gossip approaches to distributed communication.
A reflection on a day when I accidentally broke a production environment by trying to fix a failed deployment. Definitely one of my learning experiences from the past year.
A few notes about a short project to support active Nagios checks for Erlang nodes, applications and process groups.
In this second part in the "Hands On Review of the Dynamo Paper" we take a look at only acknowledging update to user after it has been written to multiple stores, and comparing read values from multiple sources to ensure consistent reads.
Very brief post on how to reproduce the behavior of receive-after in an Erlang gen_server. Useful for recurring tasks.
Spent a bit too much time this weekend trying to implement a stack-based Markdown interpreter in Erlang, and not quite enough time in the planning process. That said, it was a nice initial sketch, and in a few days I'll have time to rework it accordingly.
All Rights Reserved, Will Larson 2007 - 2014.