A synthetic memcached for experimentation
C C++ Makefile
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
src only print delay on verbose Oct 12, 2013
.gitignore update gitignore Oct 2, 2013
.travis.yml fix travis script Dec 12, 2014
LICENSE add readme and license Oct 1, 2013
Makefile Improve makefile. Apr 5, 2016
README.md add travis badge to readme Dec 12, 2014


Synthetic Memcached Build Status

Memcached fake, benchmarking server.

This implements the architecture of memcached, so a fairly high-performance network service for request/response style workloads. Multi-threaded with whole connections as the unit of distribution for load-balancing. Connections are round-robbin'd to threads and once assigned, are stuck.

No load-balancing or QoS after that.

Code is largely taken from memcached itself but cleaned up a lot.


The code is simple enough that we just use a single make file, no autotools or other complications. We do call pkg-config to find libraries and expect you to have gsl and libevent installed.


Should be it!

Memcached protocl support

Implemented commands:

  • GET -- just respond with a fixed value to every single key.
  • SET -- parses command and returns ok but doesn't actually store data.

Other commands could be added easily but aren't needed for what I want.

Get involved!

We are happy to receive bug reports, fixes, documentation enhancements, and other improvements.

Please report bugs via the github issue tracker.

Master git repository:

  • git clone git://github.com/dterei/synthetic-memcached.git


This library is BSD-licensed.


This code base is maintained by David Terei, code@davidterei.com. It is mostly taken from memcached, with some cleaning and structural changes into a cleaner code base.