Xmemcached是一个开源的memcached的Java客户端,最近引入了一些关键特性,因此版本号直接从1.2.6.2升级到1.3.0。主要的更改如下:
1、引入了failure模式,所谓failure模式是指在当一个memcached由于各种原因不可用的情况下,发往这个节点的请求将直接抛出异常,而非使用下一个可用的节点。具体可以看memached的这个文档。默认不启用,启用failure模式很简单:
MemcachedClientBuilder builder=……
//启用failure模式。
builder.setFailureMode(true);
也可以采用spring配置。
2、在启用failure模式的情况下,允许为每个memcached设置一个备份节点,当主节点挂掉的情况下,会将请求转交给备份节点,主节点恢复后又自动切换到主节点。请注意,要设置备份节点的前提是启用failure模式。假设我们已经有两个memcached节点:host1:port和host2:port,为host1:port设置一个备份节点host3:port可以实现为:
MemcachedClientBuilder builder=new XmemcachedClientBuilder(AddrUtil.getAddressMap("host1:port,host3:port host2:port"))
……
主备节点之间用逗号隔开,不同分组之间用空格隔开,完全兼容1.2。并且当备份节点连接意外断开的情况下,xmemcached也会自动修复备份节点的连接并加入映射。
关于failure模式和standby节点更多内容可以参考这篇blog.
3、修正BUG和新功能,包括issue 104,issue 105,issue 107等。
项目主页 http://code.google.com/p/xmemcached/
下载地址 http://code.google.com/p/xmemcached/downloads/list
用户指南 http://code.google.com/p/xmemcached/wiki/TableOfContents
如果你使用maven构建,可以直接引用:
<dependency>
<groupId>com.googlecode.xmemcached</groupId>
<artifactId>xmemcached</artifactId>
<version>1.3.1</version>
</dependency>
更新:发布1.3.1了,如果你还在使用1.3.0,建议升级。1.3.0因为改变了memcached地址服务器顺序,可能导致原有的缓存失效。
文章转自庄周梦蝶 ,原文发布时间2011-01-04