=
最近排查redis的问题和优化,真费劲儿。
功夫都在细节处。
=
测试暂时用的脚本如下,还是能发现不少问题的。
-c并发数,
-n请求数,
-q仅仅输出简要结果避免太长,
-d以字节的形式指定 SET/GET 值的数据大小,
-r(Use random keys 且 指定key的长度,比如30)
./redis-benchmark -n 1000000 -q
./redis-benchmark -n 1000000 -q -r 30
./redis-benchmark -n 1000000 -q -r 50
./redis-benchmark -n 1000000 -q -r 80
./redis-benchmark -n 1000000 -q -r 30
./redis-benchmark -n 1000000 -q -r 30 -c 50
./redis-benchmark -n 1000000 -q -r 30 -c 50 -d 1024
./redis-benchmark -n 1000000 -q -r 30 -c 50 -d 2048
./redis-benchmark -n 1000000 -q -r 30 -d 398092
=
#首先看看标准文档,其实总比各种文要全。排查问题,很多还得弄的仔细些。
./redis-benchmark --help
Usage: redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests]> [-k <boolean>]
-h <hostname> Server hostname (default 127.0.0.1)
-p <port> Server port (default 6379)
-s <socket> Server socket (overrides host and port)
-a <password> Password for Redis Auth
-c <clients> Number of parallel connections (default 50)
-n <requests> Total number of requests (default 100000)
-d <size> Data size of SET/GET value in bytes (default 2)
-dbnum <db> SELECT the specified db number (default 0)
-k <boolean> 1=keep alive 0=reconnect (default 1)
-r <keyspacelen> Use random keys for SET/GET/INCR, random values for SADD
Using this option the benchmark will expand the string __rand_int__
inside an argument with a 12 digits number in the specified range
from 0 to keyspacelen-1. The substitution changes every time a command
is executed. Default tests use this to hit random keys in the
specified range.
-P <numreq> Pipeline <numreq> requests. Default 1 (no pipeline).
-e If server replies with errors, show them on stdout.
(no more than 1 error per second is displayed)
-q Quiet. Just show query/sec values
--csv Output in CSV format
-l Loop. Run the tests forever
-t <tests> Only run the comma separated list of tests. The test
names are the same as the ones produced as output.
-I Idle mode. Just open N idle connections and wait.
Examples:
Run the benchmark with the default configuration against 127.0.0.1:6379:
$ redis-benchmark
Use 20 parallel clients, for a total of 100k requests, against 192.168.1.1:
$ redis-benchmark -h 192.168.1.1 -p 6379 -n 100000 -c 20
Fill 127.0.0.1:6379 with about 1 million keys only using the SET test:
$ redis-benchmark -t set -n 1000000 -r 100000000
Benchmark 127.0.0.1:6379 for a few commands producing CSV output:
$ redis-benchmark -t ping,set,get -n 100000 --csv
Benchmark a specific command line:
$ redis-benchmark -r 10000 -n 10000 eval 'return redis.call("ping")' 0
Fill a list with 10000 random elements:
$ redis-benchmark -r 10000 -n 10000 lpush mylist __rand_int__
On user specified command lines __rand_int__ is replaced with a random integer
with a range of values selected by the -r option.
#例子
测试命令事例:
1、redis-benchmark -h 192.168.1.201 -p 6379 -c 100 -n 100000
100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能
2、redis-benchmark -h 192.168.1.201 -p 6379 -q -d 100
测试存取大小为100字节的数据包的性能
3、redis-benchmark -t set,lpush -n 100000 -q
只测试某些操作的性能
4、redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')"
只测试某些数值存取的性能
中文参考:redis-benchmark http://www.runoob.com/redis/redis-benchmarks.html
redis-benchmark使用方法总结 https://blog.csdn.net/xubo245/article/details/48320689 中文翻译:
-h <hostname> Server hostname (default 127.0.0.1) //服务主机名
-p <port> Server port (default 6379) //服务器端口号
-s <socket> Server socket (overrides host and port) //socket,覆盖host和port
-a <password> Password for Redis Auth //密码
-c <clients> Number of parallel connections (default 50) //并行请求的客户端数量,默认50
-n <requests> Total number of requests (default 100000) //请求的总量,默认100000
-d <size> Data size of SET/GET value in bytes (default 2) //set或get的数据尺寸,单位是字节,默认是2
-dbnum <db> SELECT the specified db number (default 0) //选择指定的数据号
-k <boolean> 1=keep alive 0=reconnect (default 1) //布尔量,1代表保持活跃,0代表重连
-r <keyspacelen> Use random keys for SET/GET/INCR, random values for SADD //set/get/incr使用随机的keys,SADD使用随机值...
Using this option the benchmark will expand the string __rand_int__
inside an argument with a 12 digits number in the specified range
from 0 to keyspacelen-1. The substitution changes every time a command
is executed. Default tests use this to hit random keys in the
specified range.
-P <numreq> Pipeline <numreq> requests. Default 1 (no pipeline). //管道请求,默认是1,没管道(并行?)
-q Quiet. Just show query/sec values //安静,仅仅展示每秒的查询值
--csv Output in CSV format //输出按CSV格式
-l Loop. Run the tests forever
-t <tests> Only run the comma separated list of tests. The test //仅仅运行tests
names are the same as the ones produced as output.
-I Idle mode. Just open N idle connections and wait. //闲置模型,进打开N个闲置链接且等待
=
=
相关推荐
标题中的"redis-benchmarks-specification-0.1.8.tar.gz"是一个针对Redis性能基准测试规范的Python库。这个库通常用于评估和比较不同版本的Redis或与Redis相关的实现,确保它们在处理大量数据、并发请求和其他关键...
- `redis-benchmark`: 性能测试工具,用于测量Redis的读写速度。 - `redis-check-aof`: 检查AOF日志文件的工具,确保其一致性。 - `redis-check-rdb`: 检查RDB快照文件的工具,确认数据无损。 安装Redis-x64-5.0....
- **redis-benchmark.exe**:Redis性能测试工具,用于测量Redis实例的读写速度和吞吐量。 - **redis-check-aof.exe**:用于检查和修复AOF持久化文件的工具。 3. **在Windows上部署Redis**: - 安装服务:使用`...
1. **bin**目录:包含了Redis服务器(redis-server.exe)、客户端(redis-cli.exe)和其他工具,如检查数据一致性(redis-check-dump.exe)和键空间通知(redis-benchmark.exe)等。 2. **conf**目录:存放Redis的...
- 可以通过`redis-benchmark.exe`进行性能测试,评估Redis在当前配置下的性能表现。 - 使用`redis-check-aof.exe`和`redis-check-rdb.exe`定期检查数据文件的完整性,确保数据安全。 5. **注意事项**: - ...
Redis 提供了多种工具和命令来帮助维护集群,例如 redis-cli、redis-benchmark 和 redis-stat 等。 Redis 集群搭建需要考虑多个方面的因素,包括架构设计、安装和配置、节点管理和维护等。本文提供了一个基本的 ...
10. **redis-benchmark.exe**: 性能测试工具,可以用来测量Redis服务器的吞吐量和响应时间,帮助优化服务器配置和硬件选择。 总的来说,Redis 7.0.5 for Windows 64位版提供了一套完整的工具集,不仅包含数据库...
10. **redis-benchmark.exe**: 这是Redis的性能测试工具,可以用来衡量Redis服务器的吞吐量和响应时间,帮助优化配置和硬件选择。 11. **data**: 这个目录可能包含Redis默认的数据存储位置,用户可以将Redis的数据...
Redis的核心组件包括`redis-server.exe`(服务器进程)、`redis-cli.exe`(命令行客户端)以及`redis-benchmark.exe`(性能测试工具)等。用户需要通过`redis-server.exe`启动服务,并通过`redis-cli.exe`进行交互式...
- 可能还会有其他辅助工具,如检查磁盘空间的工具(check-disk-usage.sh)、性能测试工具(redis-benchmark.exe)等。 安装Redis时,你需要配置redis.conf以适应你的具体需求,比如设置监听端口、密码认证、数据...
5. **redis-benchmark.exe**:性能测试工具,可以用来测量Redis服务器的读写速度,评估系统的性能瓶颈。 在Windows上部署Redis,首先需要解压文件,然后修改`redis.conf`以适应你的环境,例如设置监听IP为`bind 0.0...
修复不受支持的配置上的 redis-benchmark 崩溃 ( #8916 ) 其他错误修复: 修复 UNLINK 在 deleted consumer groups 的 stream key 上的崩溃( #8932 ) SINTERSTORE:当不存在任何 sources 时添加丢失的 keyspace ...
3. redis-benchmark.exe:性能测试工具,可以模拟大量并发连接,测试Redis服务器的性能。 4. redis-check-dump.exe:检查RDB持久化文件的工具。 5. redis-check-aof.exe:检查AOF持久化文件的工具。 6. 配置文件...
- `redis-benchmark.exe`: 性能测试工具。 - `redis-check-dump.exe`: RDB文件检查工具。 - `redis-check-aof.exe`: AOF文件检查工具。 - `redis.conf`: 默认配置文件,可按需修改以配置Redis服务器。 - 其他辅助...
2. **redis-benchmark.exe**:这是一个性能测试工具,可以用来测量Redis服务器的读写速度。 3. **redis-cli.pdb**:客户端命令行界面的调试信息文件。 4. **redis-check-aof.pdb**:用于检查Append Only File(AOF)...
redis-benchmark.exe--
"redis-benchmark.exe"是性能测试工具,用于评估Redis服务器的性能指标,如吞吐量和响应时间。 "EventLog.dll"可能是一个用于记录和管理Windows事件日志的动态链接库,它可以帮助Redis服务在Windows上记录和报告...
4. `redis-benchmark.exe`:性能测试工具,可以评估Redis的读写速度和吞吐量。 5. 可能还包括一些文档、示例配置、依赖库等辅助文件。 在实际部署和使用中,用户需要根据自己的需求配置`redis.windows.conf`,如...
解压这个文件后,你可以找到Redis服务器的所有组件,包括`redis-server.exe`(主服务进程)、`redis-cli.exe`(命令行客户端)、`redis-benchmark.exe`(性能测试工具)和`redis-check-dump.exe`等实用工具。...
3. `redis-benchmark.exe`: 性能测试工具,用于评估Redis服务器的吞吐量和延迟。 4. `redis-check-dump.exe`: 用于检查RDB持久化文件的工具,确保数据的完整性。 5. `redis-check-aof.exe`: 检查AOF(Append Only ...