欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

RDB和AOF速度测试

程序员文章站 2024-02-12 13:31:52
...

同一台机器测试

Redis3.2
Redis5.0.7
Linux python 3.10.0-693.11.1.el7.x86_64 #1 SMP Mon Dec 4 23:52:40 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

rdb测试步骤

1. 修改redis.conf配置文件

  1. 开启rdb(测试aof时,注释掉rdb,并重启redis)
# save ""
save 900 1
save 300 10
save 60 10000
注入数据

#默认开启数据压缩

rdbcompression yes
  1. 关闭aof
appendonly no

2. 写入数据

#!/bin/bash
for ((i=0;i<100000;i++))
do
echo -en "helloworld" | redis-cli -x set name$i >>redis.log
done

3. 使用脚本写入数据,并计算注入完成时间

数据量 rdb时间 rdb文件大小
50000 76s 1.1M
100000 197s 2.1M
150000 235s 3.1M
200000 305s 4.3M
数据量 aof时间 aof文件大小
50000 79s 2.2M
100000 156s 6.5M
150000 234s 6.6M
200000 306s 8.8M

redis5.0版本测试

数据量 rdb时间 rdb文件大小
50000 99s 1.1M
100000 150s 2.1M
150000 296s 3.2M
数据量 aof时间 aof文件大小
50000 98s 2.2M
100000 156s 6.5M
150000 305s 6.7M

一个没有数据的redis,使用脚本写入数据,完成后查看持久化文件

操作步骤记录

脚本及使用


[[email protected] src]$ sh 1.sh 
本次运行时间: 76s
[[email protected] src]$ !du
du -sh ./dump.rdb 
1.1M	./dump.rdb
[[email protected] src]$ cat 1.sh 
#!/bin/bash

starttime=`date +'%Y-%m-%d %H:%M:%S'`
#执行程序
for ((i=0;i<50000;i++))
do
    echo -en "helloworld" | /home/kou/redis_tar/redis-3.2.10/src/redis-cli -p 6379 -x set name$i >>redis.log
done

endtime=`date +'%Y-%m-%d %H:%M:%S'`
start_seconds=$(date --date="$starttime" +%s);
end_seconds=$(date --date="$endtime" +%s);
echo "本次运行时间: "$((end_seconds-start_seconds))"s"
相关标签: 数据库 redis