redis 性能测试
1、测试机器 :
1颗4核 Intel(R)Xeon(TM) CPU 3.00GHz cpu
2G内存
测试前服务器负载为:
2 、测试方式:
Php模块安装redis下的php插入,提取测试。
3、string 测试:
测试代码:
<?php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
echo 'start is:'. time();
for($i=0; $i<=10000000; $i++)
{
$redis->set('key'.$i, 'test'. $i);
}
echo 'end is:' . time();
?>
千万条数据的时间: 652s
清除时间: 5.54s
成功率:100%
插入1万条数据时间: 1s
插入10万条数据时间: 7s
插入100万条数据时间: 64s
综合来看:string数据结构插入1万条记录是:0.7s左右。不会因为数据量的增大而变慢
4、list测试:
插入1万条数据时间: 0.5s
插入10万条数据时间: 7s
插入100万条数据时间: 69s
千万条数据的时间:622s
List测试结果跟string数据结构差不多
5、Hash数据结构:
插入1万条数据时间: 0.8s
插入10万条数据时间: 9s
插入100万条数据时间: 67s
插入1千万条数据的时间:684s
结论:
Redis在默认配置的情况下,也就是没有优化的情况下,各个数据结构的存储速度是一样的,无论数据量大小平均的存储速度也是一样的。我测试出来的存储速度为:1w/0.7s左右。
添加数据后的redis进程,占用内存是出奇的高啊。