Split memcache entries, keep headers separately from data. All headers occupy large contiguous space. Use GCLOCK replacement algorithm instead of LRU.