There are currently 3 types of Memcached Client:
Memcached Client for Java
SpyMemcached
XMemcached
There have been various controversies among these three clients:
Memcached Client for Java is more stable, earlier and wider than SpyMemcached;
SpyMemcached is more efficient than Memcached Client for Java;
XMemcached has better concurrency than SpyMemcache.