Java 连接 Memcached 服务

用 XMemcached / Spymemcached 在 Java 里操作 Memcached。

Beginner
Key PointsJava 客户端封装了文本协议,set/get/incr 一行搞定,并内置连接池。

XMemcached 示例

Java
MemcachedClient client = XMemcachedClientBuilder
    .newClient("127.0.0.1:11211");
client.set("user:1", 3600, "alice");     // key, 过期秒, 值
String v = client.get("user:1");
long n = client.incr("views", 1, 1);      // 不存在时初始化为 1
client.delete("user:1");
Output
alice
1

连接池与序列化

Java
XMemcachedClientBuilder builder =
    new XMemcachedClientBuilder("127.0.0.1:11211");
builder.setConnectionPoolSize(4);          // 连接池
builder.setTranscoder(new SerializingTranscoder());  // 对象序列化
Memcached stores bytes only; Java objects must be serialized (default Java serialization or Kryo). Keep values small — big objects bloat memory and slow the network; trim fields before caching.

Friends & Partners