这两天有时间,研究了一下最近火的发烫的 memcached.
java 有两个类库,Api 都很简单。
看了看介绍,先试用了 http://bleu.west.spy.net/~dustin/projects/memcached/
但是测试之下发现客户端的 CPU 占用接近 100%,而服务器端 cpu 基本上是 0 。对于比较复杂的对象每秒只能完成 1400 个左右的 get.
看来 memcached 的确是很棒的产品。但是客户端会是很大的瓶颈。
于是开始测试另外一个库,http://www.whalin.com/memcached/
结果测试结果更加令人失望,速度只是第一个的 60-70%。
难道是所有的客户端都会这么慢?所以我试了一下 perl 的库,发现 perl 的库速度很令人满意。所以应该是 java 的客户端库的问题。
但是这么很好很强大的的 memcached 又不能不用,所以打算改进一下 java 库。
开始的时候打算改进 spy 库,但是他有一个 spy.jar 不是开放源码的。而且他的对应的代码写的太复杂了,有一些过度设计了。这很不符合我追求的简单原则。
简单看了下 whalin 的源代码,发现有许多方面可以改进。于是花了点时间改进了几个比较严重影响性能的地方。经过测试,性能居然超过了 spy 包。
不错,应该可以在产品环境使用了,由于时间有限,暂时不进行更多的改进工作了。等到它成为性能瓶颈的时候再进一步的进行优化吧。估计应该有 20-150% 的优化空间。
BTW:网上有人说 Hessian 的串行化性能比 Java 的好,经过测试,发现 Serialize Java is 3 times faster. deserialize Hessian is 10% faster. Wired.
分享到:
- 2008-09-17 21:24
- 浏览 1518
- 评论(5)
- 论坛回复 / 浏览 (5 / 4634)
- 查看更多
相关推荐
我们将java_memcached-release_1.6.zip解压后的目录中的java_memcached-release_1.6.jar文件复制到java项目的lib目录下,然后我们来编写代码,比如我提供的一个应用类如下: package utils.cache; import java....
用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用...
用JAVA编写了一个小工具,用于检测当前显示器也就是显卡的显示模式,比如分辨率,色彩以及刷新频率等。 Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
PortGroper 是一款java写的开源拒绝服务测试工具,它不是僵尸网络类的ddos,而是使用大量的代理作为bots发起DDOS。Port Groper可以与用测试防火墙,干扰web 统计脚本的跟踪,为网站增加流量..往好了用什么都能干,就是...
│ 第99节:基本的性能测试.avi │ 第100节:应用上AMQ后的体系结构.avi │ 第101节:MongoDB简介和NoSQL.avi │ 第102节:MongoDB安装和基本使用.avi │ 第103节:MongoDB基本概念.avi │ 第104节:MongoDB增删改...