Java Memcached Client Benchmark

  Xmemcached 1.2.6.1 released,所以更新了一下Java Memcached Client Benchmark。对比下Xmemached,SpymemcachedJava-Memcached-Client这三个开源客户端的性能,具体的测试信息可以看这个链接

    测试源码

svn co http://xmemcached.googlecode.com/svn/trunk/benchmark/

    测试结果:

svn co http://xmemcached.googlecode.com/svn/trunk/benchmark/result

    总结下测试结果,为还在选择和考察java memcached client的朋友提供参考:

1、Java-Memcached-Client 2.5.1这个版本果然有很大改进,性能上有非常大的提升,从测试结果来看在小于100并发下有非常明显的优势,同时耗费资源也相对较多。但是在300并发访问下,Java-Memcached-Client会不断地报错:

com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.90:12000
com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000
com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.90:12000
com.schooner.MemCached.SchoonerSockIOPool Sun Oct 17 11:09:05 GMT+08:00 2010 - ++++ failed to get SockIO obj for: 10.232.36.82:12000

 并且无法正常地存取数据, 而xmc和spy却可以正常应对这一场景。因此可以看到在300并发下,Java-Memcached-Client测试的结果直接为0,因为测试无法完成。尽管我尝试将最大连接数调到2000,仍然是无法完成测试。

2、Xmemcached无论在低并发还是高并发访问的情况下,都可以保持一个比较优秀的性能表现,从xmc和spy的对比来看,xmc的优势相当大。

3、从用户选择角度来说,如果你的应用对memached的访问负载并不高,Java-Memcached-Client是一个不错的选择,但是在高峰访问的时候可能命中率会有个急剧的波动;如果你的应用访问memached的负载较高,此时我推荐你选择xmemcached;如果你需要异步的批量处理(future模式),可以选择spymemcached;如果你不知道你的应用是什么状况,我推荐你用xmemcached,可以在任何情况下获得一个比较好的性能表现

文章转自庄周梦蝶  ,原文发布时间2010-10-17

时间: 2024-10-04 13:34:29

Java Memcached Client Benchmark的相关文章

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/ben

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

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

Java 在Client/Server 网络中的应用 (转)

client|server|网络 Java 在Client/Server 网络中的应用 (作者: 2000年08月09日 10:19) 随着Java语言的日益流行,特别是Java与Internet Web的密切结合,使它在全球取得了巨大的成功.Java语言以其独立于平台.面向对象.分布式.多线索及完善的安全机制等特色,成为现代信息系统建设中的良好的开发平台和运行环境. 一.Java网络应用模型 和Internet上的许多环境一样,完整的Java应用环境实际上也是一个客户机/服务器环境,更确切地说

es java client-elasticsearch java 获取client速度很慢

问题描述 elasticsearch java 获取client速度很慢 大家好,初学elasticsearch使用版本为1.7.0,java程序每次获取client平均需要3S,这样用搜索的意义就没有了. 看了看网上的帖子说client做成单例模式,每次不关闭client,可是做成单例模式不关闭client,es的控制台会报错,但是client还可以继续使用. 请问大家有没有碰到类似的问题? 获取client代码如下: private static final Log log = LogFac

采集-Java HTTP Client 抓取网页,这个网页无论用什么编码都是乱码?

问题描述 Java HTTP Client 抓取网页,这个网页无论用什么编码都是乱码? http://www.licai.com/xuetang/CiDian.aspx?dj=1&type=&page=1 client.executeMethod(get); // String statusText = get.getStatusText(); //System.out.println("Test.main():--->" + statusText); Syste

分布式缓存系统Memcached简介与实践(.NET memcached client library)

原文:分布式缓存系统Memcached简介与实践(.NET memcached client library) 缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够灵活.此时Memcached或许是你想要的. Memcached是什么?Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减

Java在Client/Server网络中的应用

随着Java语言的日益流行,特别是Java与Internet Web的密切结合,使它在 全球取得了巨大的成功.Java语言以其独立于平台.面向对象.分布式.多线索 及完善的安全机制等特色,成为现代信息系统建设中的良好的开发平台和运行环 境. 一.Java网络应用模型 和Internet上的许多环境一样,完整的Java应用环境实际上也是一个客户机/ 服务器环境,更确切地说是浏览器/服务器模型(即Browser/Server模型,简称 Web模型).但与传统的客户机/服务器(C/S) 的二层结构不同

Java开发中的Memcache原理及实现

七.            Memcached 客户端程序 Memcached的java客户端已经存在三种了: ?  官方提供的基于传统阻塞io由Greg Whalin维护的客户端 ?  Dustin Sallings实现的基于java nio的Spymemcached ?  XMemcached 1. 三种API比较 1)      memcached client for java 较早推出的memcached JAVA客户端API,应用广泛,运行比较稳定. 2)      spymemca