Chad DePue 4.45
We'll walk through the tradeoffs and design decisions made when building a Redis Server Clone in Erlang. We're using leveldb as the backend, so we'll talk about how that choice affects ultimate performance goals. There are not appropriate sorted set structures in Erlang so we have to build those and we'll talk in detail about those objects. These issues will lead into a discussion about performance of Redis and Edis, so we'll show some benchmarks and talk about the tradeoffs. Finally, we'll talk about production system deployment, and how we've used Edis in the production environment.
Target audience: Developers who may be curious to see Erlang used to build a familiar piece of server infrastructure. Erlang developers who will be interested in our design decisions, particularly around unusual data structures. DevOps folks who would be interested in how Edis could work in their deployments.