第一部分 简要说明
Redis 是个内存数据库,并且能异步的序列到本地硬盘。 是个不错的东西,所以研究一下。
网上很多文章,我就不做基础教学了,根据我自己的研究情况记录。
首先列几个网址:
手册 http://www.runoob.com/redis/redis-tutorial.html 从安装到使用都有了,而且分类的很好。
编程API http://tool.oschina.net/uploads/apidocs/ 在你写代码的时候 可以查一下对应的接口, 和上一个网址内容基本异议对应。
第二部分
我自己做了一个性能测试。
PC i5-6500 3.2G 4核 8G 64位 win7
用自带的性能测试工具
redis-benchmark -n 10000
结果:取部分====== MSET (10 keys) ======
10000 requests completed in 0.18 seconds
50 parallel clients
3 bytes payload
keep alive: 1
95.50% <= 1 milliseconds
100.00% <= 1 milliseconds
56497.18 requests per second
每秒操作5.6万次。
用客户机去访问数据库服务器
测试命令: redis-benchmark -n 10000 -h 192.168.1.144 100M的局域网
====== MSET (10 keys) ======
10000 requests completed in 0.41 seconds
50 parallel clients
3 bytes payload
keep alive: 1
2.23% <= 1 milliseconds
75.49% <= 2 milliseconds
97.95% <= 3 milliseconds
99.55% <= 4 milliseconds
99.83% <= 5 milliseconds
99.91% <= 6 milliseconds
100.00% <= 6 milliseconds
24509.80 requests per second
每秒操作2.4万次。
性能减半。
在实际生产过程中,更多的情况是数据库和应用服务分离的,也就是测试二的情况。
所以网络访问消耗是个重要的瓶颈。
测试中 加了并发连接参数 -c 50 , 测试结果数据变动不大。
阿里云 2核 4G 性能(好弱)
====== MSET (10 keys) ======
10000 requests completed in 0.73 seconds
50 parallel clients
3 bytes payload
keep alive: 1
2.06% <= 1 milliseconds
21.61% <= 2 milliseconds
67.44% <= 3 milliseconds
80.56% <= 4 milliseconds
93.41% <= 5 milliseconds
98.19% <= 6 milliseconds
99.95% <= 7 milliseconds
100.00% <= 7 milliseconds
13793.10 requests per second