









memtier_benchmark 是一个高性能的基准测试工具,专门用于测试 Redis 和 Memcached 等内存数据库的性能。它支持多线程、多客户端并发测试,并提供详细的性能统计信息。以下是 memtier_benchmark 的详细用法和示例。
memtier_benchmarksudo apt-get update
sudo apt-get install memtier_benchmark
brew install memtier_benchmark
git clone https://github.com/RedisLabs/memtier_benchmark.git
cd memtier_benchmark
autoreconf -ivf
./configure
make
sudo make install
memtier_benchmark [options]
| 选项 | 说明 |
|---|---|
-s <host> |
指定 Redis 服务器的主机名(默认:127.0.0.1)。 |
-p <port> |
指定 Redis 服务器的端口号(默认:6379)。 |
-a <password> |
如果 Redis 设置了密码,使用该选项指定密码。 |
-c <clients> |
指定并发客户端数量(默认:50)。 |
-t <threads> |
指定线程数量(默认:4)。 |
-n <requests> |
指定每个客户端的请求数量(默认:10000)。 |
-d <size> |
指定 SET 值的数据大小(单位:字节,默认:32)。 |
--ratio <ratio> |
指定读写操作的比例(如 1:1 表示读写各占一半,默认:1:0)。 |
--pipeline=<num> |
使用管道(pipeline)进行测试,指定每个管道的请求数量。 |
--key-pattern=<pattern> |
指定键名的生成模式(如 R:R 表示随机键名,S:S 表示顺序键名)。 |
--key-minimum=<min> |
指定键名的最小值(默认:1)。 |
--key-maximum=<max> |
指定键名的最大值(默认:1000000)。 |
--test-time=<sec> |
指定测试的持续时间(单位:秒)。 |
--hide-histogram |
隐藏直方图输出。 |
--json-out-file=<file> |
将测试结果以 JSON 格式保存到文件。 |
使用默认参数测试 Redis 服务器:
memtier_benchmark -s 127.0.0.1 -p 6379
使用 100 个并发客户端和 8 个线程进行测试:
memtier_benchmark -s 127.0.0.1 -p 6379 -c 100 -t 8
每个客户端发送 50000 个请求:
memtier_benchmark -s 127.0.0.1 -p 6379 -n 50000
读写操作比例为 1:1(即读写各占一半):
memtier_benchmark -s 127.0.0.1 -p 6379 --ratio=1:1
使用管道进行测试,每个管道包含 10 个请求:
memtier_benchmark -s 127.0.0.1 -p 6379 --pipeline=10
键名范围为 100000 到 200000:
memtier_benchmark -s 127.0.0.1 -p 6379 --key-minimum=100000 --key-maximum=200000
测试持续时间为 60 秒:
memtier_benchmark -s 127.0.0.1 -p 6379 --test-time=60
将测试结果保存为 JSON 文件:
memtier_benchmark -s 127.0.0.1 -p 6379 --json-out-file=result.json
memtier_benchmark 的输出结果通常包括以下信息:
例如:
ALL STATS
========================================================================
Type Ops/sec Hits/sec Misses/sec Avg. Latency KB/sec
-----------------------------------------------------------------------
Sets 50000.00 --- --- 0.50000 1562.50
Gets 50000.00 50000.00 0.00 0.50000 1562.50
Waits 0.00 --- --- --- ---
Totals 100000.00 50000.00 0.00 0.50000 3125.00
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。