暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
Memcached-vs.-Redis不同key大小性能测试报告-v1.0-20130123-廖诚.docx
11
19页
0次
2025-04-09
免费下载
一、 测试目的
1)
测试
Memcached
Redis
,在
key
随机大小的情况下性能如何;
2) Memcached
LRU
Least Recently Used
使
算法置换掉老的数据,测试当出现这种情况时,其性能如何;
3) Redis
达到存上时,会根
LRU
算法将高
key
保存内存低频
key
转到
交换文件,测试当出现这种情况时,其性能如何。
二、 测试环境
1
网络环境
如图
1
所示,
42
43
均连接至千兆交换机,其中
42
为服务端,
43
为客户端:
1
2
硬件环境
IP
型号
OS CPU
内存 硬盘 网卡 用途
192.168.0.4
2
HP
刀片
RedHat6.2
x86_64
Intel(R) Xeon(R)
E5410 @ 2.33GHz 8
16G 68G 1000Mb/s
被压机
192.168.0.4
3
HP
刀片
RedHat6.2
x86_64
Intel(R) Xeon(R)
E5410 @ 2.33GHz 8
16G 68G 1000Mb/s
加压机
3
软件环境
软件名称 软件版本 是否开源
memcached v1.4.15
libevent v2.0.21-stable
redis v2.6.5
三、 测试结果
2
100
字节范围内生成随机大小的
key
,加上
10
字节的
value
组成每条数据记录内
容;每次操作线程数为
50
个,每线程
10
万条记录,在老数据基础上进行测试;老数据基
础分别为
0
万、
500
万、
1000
万、
1500
万条……,依次类推每次测试增长
500
万条,分别
测试
insert
select
update
情况;
因为
Redis
在写入
8
千万条时,开始启动虚拟内存,此时意味着物理内存不够用,再加
上受快照持久化子进程同时抢占系统资源的影响性能出现拐点,在此拐点前其性能都与
7
500
万的情况差不多,所以性能曲线图将只描述
7
500
万后的测试情况;
Redis
快照持久化过程如下:
1)
达到持久化条件,
Redis
调用
fork
创建一子进程;
2)
父进程继续维护自己的内存空间并同时处理
client
端的请求,而子进程负责将
fork
时刻整个数据库的一个快照写入到临时文件;
3)
当子进程将快照写入临时文件结束后,会用这个临时文件替换原来的快照文件,
然后子进程退出;
注:每次快照持久化都是将内存数据完整的写入磁盘一次,并不是增量的同步数据;
1
insert
操作性能对比
1)
老数,进
50
客户每客
100,000
次写
如图
2-1
、图
2-2
示:
 
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
mem
ca
99800.40 102796.05 100020.00 103950.10 105086.17 76405.87 104733.98 100260.68
redis 69213.73 32784.74 37855.84 1964.88 1204.61 1032.06 636.27 396.13
2-1
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
0.00
20000.00
40000.00
60000.00
80000.00
100000.00
120000.00
memcached
redis
2-2
说明:纵轴为平均用时(单位:次
/
秒),横轴为老数据基础(单位:千万);
2) CPU
使用情况,如图
3-1
、图
3-2
示:
 
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
mem
ca
151.74 149.50 150.27 151.53 147.30 322.40 172.72 176.30
redis 92.33 51.18 54.77 3.64 2.15 1.81 1.19 0.85
3-1
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
0.00
50.00
100.00
150.00
200.00
250.00
300.00
350.00
memcached
redis
3-2
说明:纵轴为平均占用单个
CPU
百分比,横轴为老数据基础(单位:千万);
3) MEM
使用情况,如图
4-1
、图
4-2
示:
 
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
mem
ca
66.70 70.98 75.00 79.14 83.32 88.90 89.91 89.91
redis 78.37 77.44 77.51 70.20 63.14 64.95 62.92 52.86
4-1
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
0.00
10.00
20.00
30.00
40.00
50.00
60.00
70.00
80.00
90.00
100.00
memcached
redis
4-2
说明:纵轴为占用内存平均百分比,横轴为老数据基础(单位:千万);
4)
每秒页面错误,如图
5-1
、图
5-2
示:
 
7.50 8.00 8.50 9.00 9.50 10.00 10.50 11.00
mem
ca
0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
redis 0.00 40.45 25.44 88.05 87.17 67.92 65.75 71.76
5-1
of 19
免费下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。