庄周梦蝶

生活、程序、未来
   :: 首页 ::  ::  :: 聚合  :: 管理

xmemcached发布1.3.6

Posted on 2012-03-19 10:51 dennis 阅读(4903) 评论(3)  编辑  收藏 所属分类: javamy open-source

    开源的memcached Java客户端——xmemcached发布1.3.6版本。

    主要改进如下: 

1.  为MemcachedClientBuilder添加两个新方法用于配置:

public void setConnectTimeout(long connectTimeout);  
public void setSanitizeKeys(boolean sanitizeKeys);

 

2.  用于hibernate的XmemcachedClientFactoryd添加了connectTimeout属性,感谢网友 Boli.Jiang的贡献。

3.  添加新的枚举类型 net.rubyeye.xmemcached.transcoders.CompressionMode,用于指定Transcoder的压缩类型,默认是ZIP压缩,可选择GZIP压缩。Transcoder接口添加setCompressionMode方法。

4.  修改心跳规则,原来是在连接空闲的时候发起心跳,现在变成固定每隔5秒发起一次心跳检测连接。

5.  修改默认参数,默认禁用nagle算法,默认将批量get的合并因子下降到50。

6.  修复bug和改进,包括:161163165169172、173176179180

 

项目主页:http://code.google.com/p/xmemcached/

项目文档:http://code.google.com/p/xmemcached/w/list

下载:http://code.google.com/p/xmemcached/downloads/list

源码:https://github.com/killme2008/xmemcached

 

Maven依赖:

 <dependency>  

    <groupId>com.googlecode.xmemcached</groupId>  
    <artifactId>xmemcached</artifactId>  
    <version>1.3.6</version>  
</dependency> 

    最后感谢所有提出issue和改进意见的朋友们。

评论

# re: xmemcached发布1.3.6  回复  更多评论   

2012-03-29 15:44 by hallywang
作者您好,在使用xmemcached中,在存储大量数据的时候会抛出timout异常(spring中配置超时已经很长,10秒以上),而且当抛出这个timeout异常之后,后续对memcache的操作都会失败,memcached服务器是好的,重启应用就好了。感觉是客户端跟服务端的这个链接,在出现timeout异常之后,就不可用了,需要重新建立连接。盼复。hallywang@gmail.com

# re: xmemcached发布1.3.6[未登录]  回复  更多评论   

2012-03-30 17:45 by dennis
@hallywang
你好,多大的数据?

# re: xmemcached发布1.3.6  回复  更多评论   

2012-06-01 09:33 by hallywang
@dennis
数据每条在150K左右,读取比较频繁,每秒有200次左右。关键配置如下:

<bean name="memcachedClient" factory-bean="memcachedClientBuilder" factory-method="build"
destroy-method="shutdown">
<property name="opTimeout" value="10000"/>
</bean>


<property name="configuration">
<bean class="com.google.code.yanf4j.config.Configuration">
<property name="readThreadCount" value="20"/>
<property name="writeThreadCount" value="20"/>
<property name="checkSessionTimeoutInterval" value="8000"/>
<property name="soTimeout" value="70000"/>
<property name="sessionIdleTimeout" value="500000"/>
</bean>
</property>

<property name="connectionPoolSize">
<value>120</value>
</property>

只有注册用户登录后才能发表评论。


网站导航: