前言:这里对压测进行一些简介,本篇介绍redis压测场景,使用redis官方自带的工具进行压测。
压测相关的一些指标:
- QPS(Queries Per Second):每秒能够响应的查询次数,也即是最大吞吐能力(吞吐量)。
- TPS(Transactions Per Second):每秒处理的事务数目。一个事务是指一个客户端向服务器发送请求然后服务器做出反应的过程。TPS 的过程包括:客户端请求服务端、服务端内部处理、服务端返回客户端。
例如,访问一个页面会请求服务器 3 次,那么访问这一个页面就会产生一个TPS,三个QPS。
redis压测
压测100个并发连接,100000个请求:
# -c 为连接数,-n 为100000个请求
redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000
存取大小为300字节的数据:
# -q 只做简单输出,-d 指定数据包大小
redis-benchmark -h 127.0.0.1 -p 6379 -q -d 300
测试指定操作的性能:
# -t 指定操作
redis-benchmark -t set,lpush -q -n 100000
测试指定数值存取的性能
redis-benchmark -n 100000 -q script load "redis.call('set','tom','cat')"