NOTE
1.11 Redis压测
1. 压测Lua脚本 1. redis-cli加载Lua 2. redis-benchmark压测Lua 3. redis-benchmark压测pipeline 这个命令会把 evalsha d72ab028ab5ff319cf0979291745f98c099cecb2 1 test 10 5条
这是历史学习笔记,可能存在过时或不完整的理解。
1. 压测Lua脚本
- redis-cli加载Lua
redis-cli -h 127.0.0.1 -p 6379 -a "xxx" -x script load < test.lua
- redis-benchmark压测Lua
# 1表示key的数量
redis-benchmark -h 127.0.0.1 -p 6379 -a "xxx" -c 1000 -n 1000000 evalsha d72ab028ab5ff319cf0979291745f98c099cecb2 1 test 10
- redis-benchmark压测pipeline
redis-benchmark -h 127.0.0.1 -p 6379 -a "xxx" -c 1000 -n 1000000 -P 5 evalsha d72ab028ab5ff319cf0979291745f98c099cecb2 1 test 10
这个命令会把evalsha d72ab028ab5ff319cf0979291745f98c099cecb2 1 test 105条5条的批量发送,最终的QPS要除以5
2. 压测注意事项
- 首先在本地压测Redis,可以忽略网络瓶颈(带宽+延迟)
- redis-benchmark也是单线程的,如果CPU100%了,那么可以开启多个redis-benchmark来压测,然后累加QPS
- 有其他问题可以用tcpdump抓包用wireshark分析下