開源的java memcached client—— xmemcached發(fā)布1.3.4版本,主要改進(jìn)如下:
1、修復(fù)一個(gè)相對(duì)嚴(yán)重的bug,在解析二進(jìn)制協(xié)議時(shí)如果遇到從服務(wù)端返回的錯(cuò)誤信息,會(huì)導(dǎo)致連接異常斷開;如果你沒有使用binary協(xié)議,不會(huì)遇到此問題。建議使用xmemcached并且使用二進(jìn)制協(xié)議的朋友升級(jí)到此版本。
2、允許XMemcachedClientFactoryBean配置opTimeout選項(xiàng)。
3、添加RoundRobinMemcachedSessionLocator,輪詢的連接選擇器,僅用于kestrel或者memcacheq集群,這些應(yīng)用都不要求同一個(gè)key要保存在固定的服務(wù)器上,而僅是作為集群分擔(dān)負(fù)載。
4、KetamaMemcachedSessionLocator添加額外選項(xiàng),允許配置是否兼容 nginx-upstream-consistent,這個(gè)是網(wǎng)友
wolfg1969貢獻(xiàn)的patch。如果要使得xmc的一致性哈希算法兼容nginx-upstream-consistent,只要設(shè)置cwNginxUpstreamConsistent為true即可,示范代碼:
MemcachedClientBuilder builder = new XMemcachedClientBuilder(
AddrUtil.getAddresses(servers));
builder.setSessionLocator(new KetamaMemcachedSessionLocator(
true));
5、修復(fù)bug,包括issue 132 , issue 142 , issue 133 , issue 139 , issue 142 , issue 145 ,issue 150等。
如果你使用maven,只要簡(jiǎn)單升級(jí)版本即可:
<dependency>
<groupId>com.googlecode.xmemcached</groupId>
<artifactId>xmemcached</artifactId>
<version>1.3.4</version>
</dependency>
下載地址:
http://code.google.com/p/xmemcached/downloads/list