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.
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.
Very brief post on how to reproduce the behavior of receive-after in an Erlang gen_server. Useful for recurring tasks.
All Rights Reserved, Will Larson 2007 - 2013.