  When compared to blocking concurrency, non-blocking concurrency can provide
higher performance in parallel shared-memory contexts, especially in high
contention scenarios. This paper proposes FLeeC, an application-level cache
system based on Memcached, which leverages re-designed data structures and
non-blocking (or lock-free) concurrency to improve performance by allowing any
number of concurrent writes and reads to its main data structures, even in
high-contention scenarios. We discuss and evaluate its new algorithms, which
allow a lock-free eviction policy and lock-free fast lookups. FLeeC can be used
as a plug-in replacement for the original Memcached, and its new algorithms and
concurrency control strategies result in considerable performance improvements
(up to 6x).
