标签:
现在的web系统已经越来越多的应用缓存技术,而且缓存技术确实是能实足的增强系统性能的。我在项目中也开始接触一些缓存的需求。
需求的增长也就带来了系统的变化,也正为这种变化我开始思考怎么让这些代码兼容,并为以后的系统模块提供比较统一的支持。正好在openfire这个开源项目上得到了启发,它的集群思路我觉得是种不错的解决方案。
随后就开始写一个简单的缓存系统,结构非常的简单,代码也非常的简单。说是开源其实也有点过了,只是觉得闭门造车没有意思,所以将代码放在github上,如果有高手看到指点一下那我不是赚大了。哈哈。
代码非常简单,maven工程引入也很容易,我就不打算对代码做啥说明,有兴趣的朋友下载简单看看就能明白。
我的测试方法比较简单,向缓存里连续写100万个对象,然后看看处理的性能。说明一下,这些测试都是在本机完成的
OS:Windows7 64位
CPU:I5-4210U @ 1.70GHZ 2.40GHZ
RAM:8G
Redis用的是Redis on Windows Redis-x64-3.2.100
总共耗时:2380ms
每毫秒写入:420条
每秒写入:420000条
总共耗时:9503ms
每毫秒写入:105条。
每秒写入:105000条。
总共耗时:40367ms
每毫秒写入:24条。
每秒写入:24000条。
为了对各种方案进行一些数据上对比,做了一个简单的写入测试,使用本地内存做缓存这种方案最高效,写入量达到42万每秒。而redis则只达到了24000条/秒,我对redis不是特别熟悉,看到这个数据有点诧异。
我比较懒,没有测试一段时间内的读写性能,只不过从这个简单的测试中发现,本地内存的效果还是很高的,如果加上一些其他的功能,比如网络传输,数据同步等后性能会下降。
只不过redis和ignite差这么大我没有搞明白,不知道是不是我的方法不对呢?
标签:
原文地址:http://www.cnblogs.com/5207/p/5908567.html