Pro of xmemcached:
- supports failover - the configuration "host1:port,host2:port". The client goes into "host1:port" until this memcached is aliave. After this memcached fails, it goes into "host2:port".
Cons of xmemcached:
- setWithNoReply() operation is not stable. We had to use set() instead: http://code.google.com/p/xmemcached/issues/detail?id=194
- partitioning/sharding is heavy. The configuration "host1:port,host2:port host3:port,host4:port" is much heavier for the client than the configuration "host1:port,host2:port"
- There is only one contributor to xmemcached, while there are a lot of contributors in spymemcached