redis和mysql的数据写入测试
1)PHP 写入mysql数据的代码[*]
结果:
使用PHP 给mysql 插入10W条数据时的状态:执行时间是70秒
使用PHP 给mysql 插入50W条数据时的状态:执行时间是335秒
2) 安装phpredis模块
1. 在https://github.com/owlient/phpredis 下载nicolasff-phpredis-2.1.3-167-ga5e53f1.zip
解压 unzip –q nicolasff-phpredis-2.1.3-167-ga5e53f1.zip
2. cd phpredis
/usr/local/php/bin/phpize 这个phpize是安装php模块的
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
确认是否生成redis扩展库:
/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/
在php.ini中添加extension=redis.so
重新加载php/etc/init.d/php-fpm> 3. php代码测试
输出hello world!
3) PHP 写入redis数据的代码
rpush.php代码:
$redis = new Redis();
$redis->connect('10.1.0.169',6379);
$redis->rpush("order","$ins");
lpop.php代码:
$num=$redis->llen("order");
while ($num) {
$ins=$redis->lpop("order");
mysqli_query($mysqli,$ins);
$num=$redis->llen("order");
}
结论:
使用PHP 给redis插入10W条数据时的状态:
执行时间是24秒
使用redis 给mysql插入10W条数据时的状态:
执行时间是120秒
使用PHP 给redis 插入50W条数据时的状态:
执行时间是124秒
使用redis 给mysql插入50W条数据时的状态:
执行时间是735秒
4) 通过测试,验证redis和mysql每秒的插入效率:
测试结论:在网络rtt平均时间为0.2ms,value值大小平均是1kb的情况下,
redis 插入队列数据的效率大约为每秒 4200个value值
同等条件下,mysql插入数据的效率大约为每秒 700个,同样大小数据的insert操作
页:
[1]