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.