之前工作中对redis的应用还是比较浅显的。大概就是将热点数据存入redis,读取数据,走redis,增删改先更新数据库中的数据,再将redis做一个删除,这部分涉及到如何保证redis中的数据和数据库中的属于一致性的问题,这个后边会有讨论,这里不做赘述。
也就是说:我只知道读取数据redis要比mysql要快,但是具体能快到什么程度,这件事情我是不知道的。
Redis还有一个性能测试工具redis-benchmark这件事情,我也是第一次知道,确实,我工作这几年使用redis也不知道是用在谁身上了。
废话不多说,下边我们开始学习redis-benchmark
一:redis-benchmark命令参数
序号 | 选项 | 描述 | 默认值 |
1 | -h | 指定服务器主机名 | 127.0.0.1 |
2 | -p | 指定服务器端口 | 6379 |
3 | -s | 指定服务器 socket | |
4 | -c | 指定并发连接数 | 50 |
5 | -n | 指定请求数 | 10000 |
6 | -d | 以字节的形式指定 SET/GET 值的数据大小 | 3 |
7 | -k | 1=keep alive 0=reconnect | 1 |
8 | -r | SET/GET/INCR 使用随机 key, SADD 使用随机值 | |
9 | -P | 通过管道传输 请求 | 1 |
10 | -q | 强制退出 redis。仅显示 query/sec 值 | |
11 | --csv | 以 CSV 格式输出 | |
12 | -l(L 的小写字母) | 生成循环,永久执行测试 | |
13 | -t | 仅运行以逗号分隔的测试命令列表。 | |
14 | -I(i 的大写字母) | Idle 模式。仅打开 N 个 idle 连接并等待。 |
二:测试性能
测试100个并发, 100000条请求:
redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000
下面是我们主要的内容,查看redis并发测试都测试了那些性能参数:
我是腾讯云的2核4G轻量级服务器,能达到65000的QPS已经很不容易了,redis是真的快。
以上大概就是redis-benchmark的基本使用。
有好的建议,请在下方输入你的评论。