为了账号安全,请及时绑定邮箱和手机立即绑定

本地测试读取redis和普通文件缓存的速度,redis慢一倍?

本地测试读取redis和普通文件缓存的速度,redis慢一倍?

蓝山帝景 2018-09-07 16:23:22
  本地电脑测试读取redis和普通文件缓存的速度,分别连续读取缓存文件1次、1千次、1万次,缓存内容大小40KB,redis读取速度总比文件缓存速度慢一倍。如果确实如此,是不是在低并发情况下file缓存方式更快点呢?还是我的测试方式有误?<?php    //redis缓存,读1万次约1.344396秒    $t1 = microtime(true);    $redis = new Redis();    $redis->connect("127.0.0.1","6379");    $redis->auth('123456');    for($i=0;$i<10000;$i++){            $redis->get("test");    }    echo  round(microtime(true)-$t1,6);    exit;?><?php//文件缓存,读取1万次约0.635125秒$t1 = microtime(true);for($i=0;$i<10000;$i++){    $html = file_get_contents('testfile.php');}echo  round(microtime(true)-$t1,6);exit;?>
查看完整描述

2 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

你这个测试方法不对,你应该每次读取key的值和读取不通的文件,
你现在这个测试方法文件已经被cache了。 测试不出差别的。

查看完整回答
反对 回复 2018-09-29
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

重新测试了,换成了Linux服务器,php5.6,512内存。连续读取1千次不同的文件(每个文件41KB),redis也是1千个不同的key,文件缓存还是比redis快!

但是,但是,后来我换成连续读取1万个不同的文件,文件缓存方式耗时30秒,二redis竟然只需0.7秒。看来文件缓存只适合小数据小并发,大并发下还是redis好很多


查看完整回答
反对 回复 2018-09-29
  • 2 回答
  • 0 关注
  • 1027 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信