Java Memcached Client的Benchmark——xmemcached发布1.1.1

  趁周末,做了一个java memcached client的性能benchmark,比较了4个开源的client: spymemcachehd,xmemcached,java-MemCached和岑文初的asf-cached。这个测试可能不是那么准确,为了保证命中率,无法测试更多并发下的表现,以后再测试多个memcached server下的表现可能更有价值。详细的测试报告在这里 http://xmemcached.googlecode.com/svn/trunk/benchmark/benchmark.html,包括了测试场景、结果、软硬件情况说明等等。从测试分析产生的报表来看,在低并发下,基于传统的阻塞io的clients表现还可以,经过岑文初优化的版本超过了原始的java-MemCached。而在并发相对高一点的情况下,基于nio的spymemcached和xmemcached都超过了传统clients,不过这个差距随着value大小的增大而减小。另外,xmemcached在value比较小(小于1K左右)的性能高于spymemcached,而在更大value的情况下却是比不上spymemcached,不过这个差距随着并发增大而减小。更多信息请自己查看报告,checkout源码来分析。

    xmemcached正式发布1.1.1,这个版本可以说是更强壮,更稳定的版本,也是支持二进制协议前的过渡版本。主要的改进如下:

1、yanf4j从0.60升级到0.61,因此使用的时候请替换这个jar包。
2、更多的单元测试,单元测试覆盖率达到63%,并覆盖了绝大多数关键代码。
3、进行了24小时压测,观察内存使用情况等,未发现有内存泄漏的隐患。
4、最重要的重构,将原来基于switch语句的协议解析部分修改为了更为OO的Command继承体系,尽管因为多态调用带来一点性能损失,然而整体结构更加合理,并易于添加新的协议支持和扩展(比如binary协议)。性能将会持续在后续版本进行改进。
5、修复BUG和添加新特性,并deprecated部分方法和类,具体信息参考Changelog

   项目首页:    http://code.google.com/p/xmemcached/
   javadoc文档: http://xmemcached.googlecode.com/svn/trunk/apidocs/index.html
   下载地址:     http://code.google.com/p/xmemcached/downloads/list
   wiki地址:     http://code.google.com/p/xmemcached/w/list
   svn地址:     http://xmemcached.googlecode.com/svn/trunk/

文章转自庄周梦蝶  ,原文发布时间2009-06-07

时间: 2024-09-17 04:23:53

Java Memcached Client的Benchmark——xmemcached发布1.1.1的相关文章

Java Memcached Client Benchmark

  Xmemcached 1.2.6.1 released,所以更新了一下Java Memcached Client Benchmark.对比下Xmemached,Spymemcached和Java-Memcached-Client这三个开源客户端的性能,具体的测试信息可以看这个链接.     测试源码 svn co http://xmemcached.googlecode.com/svn/trunk/benchmark/     测试结果: svn co http://xmemcached.g

spring调用memcached client for java

转载:spring调用memcached client for java memcached client for java客户端API:memcached client for java  网址:http://www.whalin.com/memcached  调用测试类  MClient.java  Java代码   package bcndyl.test;      import org.springframework.context.ApplicationContext;   impor

xmemcached发布1.3.4

开源的java memcached client-- xmemcached发布1.3.4版本,主要改进如下:   1.修复一个相对严重的bug,在解析二进制协议时如果遇到从服务端返回的错误信息,会导致连接异常断开:如果你没有使用binary协议,不会遇到此问题.建议使用xmemcached并且使用二进制协议的朋友升级到此版本. 2.允许XMemcachedClientFactoryBean配置opTimeout选项. 3.添加RoundRobinMemcachedSessionLocator,轮

xmemcached发布1.3.2版本

    Xmemcached是一个开源的java memcached client,具有高性能.更易用.功能完善等优点,距离上次发布1.3.1已经超过两个月,现在正式发布1.3.2这个新版本,主要的改进如下:1.Bug修复,从1.3.1版本以来发现的bug并修复,包括: issue 112:: 新引入的failure模式在启动的时候,如果memcached故障,运行不符合预期的bug. issue 113: 新增加一个delete方法,可以设置操作超时 public boolean delete

clj-xmemcached: memcached client for clojure

  Clj-xmemcached is an opensource memcached client for clojure wrapping xmemcached. Xmemcached is an opensource high performance memcached client for java. Leiningen Usage To include clj-xmemcached,add: [clj-xmemcached "0.1.1"] to your project.c

xmemcached发布1.10 RC3(附最新测试结果)

在某用户(可能是唯一用户)的反馈和建议下,xmemcached做了不少改进和修正,特此感谢.     XMemcached发布1.10-RC3,这可能是1.10 release前最后一个RC版本,此版本的主要改进: 1.引入XMemcachedClientMBean接口,添加一个新的MBean,主要功能是允许通过JMX动态添加或者移除memcached server.如图: 除了通过JMX之外,也可以通过编程来动态添加或者移除memcachd server节点.例如: XMemcachedCli

xmemcached发布1.10 RC2

xmemcached发布1.10 RC2,这一版本的主要改进如下: 1.修复1.10-RC1以来发现的bug 2.添加对flush_all协议的支持,XMemcachedClient.flushAll方法用以使memcached的缓存数据项失效,这一方法有系列重载方法  void     flushAll()           使cache中所有的数据项失效,如果是连接多个节点的memcached,那么所有的memcached中的数据项都将失效 void     flushAll(long t

xmemcached发布1.0-BETA版

xmemcached发布1.0-beta,从0.60直接到1.0-beta,主要改进如下:1.支持更多协议,在已有协议支持的基础上添加了append.prepend.gets.批量gets.cas协议的支持,具体请查看XMemcachedClient类的实例方法.重点是cas操作,下文将详细描述下. 2.memcached分布支持,支持连接多个memcached server,支持简单的余数分布和一致性哈希分布. 3.0.60版本以来的bug修复.    memcached 1.2.4之后开始支

xmemcached发布1.3.6

    开源的memcached Java客户端--xmemcached发布1.3.6版本.     主要改进如下:  1.  为MemcachedClientBuilder添加两个新方法用于配置: public void setConnectTimeout(long connectTimeout);  public void setSanitizeKeys(boolean sanitizeKeys);   2.  用于hibernate的XmemcachedClientFactoryd添加了c