Redis学習ノート-redis-benchmark詳細

4280 ワード

redis-benchmarkはRedisのベンチマーク性能テストを行うことができ、開発とメンテナンス担当者がRedisの関連性能をテストするのに多くのオプションを提供しています.
-c
-c(clients)オプションは、クライアントの同時実行量を表します(デフォルト50)
-n
-n(num)オプションは、クライアント要求数(デフォルト100000)を表します.
例えば、100クライアントをテストして合計20000回要求する
[root@vmzq1l0l ~]# redis-benchmark -c 100 -n 20000

redis-benchmarkは、さまざまなデータ構造のコマンドをテストし、パフォーマンス指標を与えます.
====== MSET (10 keys) ======
  20000 requests completed in 0.28 seconds
  100 parallel clients
  3 bytes payload
  keep alive: 1

51.86% <= 1 milliseconds
93.78% <= 2 milliseconds
97.22% <= 3 milliseconds
98.67% <= 4 milliseconds
99.65% <= 5 milliseconds
99.87% <= 7 milliseconds
99.92% <= 8 milliseconds
100.00% <= 8 milliseconds
70921.98 requests per second

上記は合計20000回のget操作を実行し、0.28秒で完了し、各要求データ量は3バイト、51.89%の命令実行時間は1ミリ秒未満、・・、99.92%の命令実行時間は8ミリ秒未満、Redisは毎秒70921.98回のget要求を処理できる
-q
-qオプションはredis-benchmarkのrequests per second情報のみを表示します
-r
空のRedis上でredis-benchmarkを実行すると3つのキーしか見つかりません
127.0.0.1:6379> dbsize
(integer) 3
127.0.0.1:6379> keys *
1) "counter:__rand_int__"
2) "mylist"
3) "key:__rand_int__"

Redisにより多くのキーを挿入する場合は、-r(random)オプションを使用して、Redisにより多くのランダムなキーを挿入できます.
[root@vmzq1l0l ~]# redis-benchmark -c 100 -n 20000 -r 10000

-rオプションはkey、counterキーに12ビットの接尾辞を付け、-r 10000は後4ビットのみをランダムに処理することを表す(-rは乱数の個数ではない).例えば、上記の操作後、keyの数と結果構造は以下の通りである.
127.0.0.1:6379> dbsize
(integer) 18641
127.0.0.1:6379> scan 0
1) "14336"
2) 1) "key:000000004580"
2) "key:000000004519"
…
10) "key:000000002113"

-P
-Pオプションは、各要求pipelineのデータ量を表します(デフォルトは1).
-k
-kオプションは、クライアントがkeepaliveを使用するかどうかを表します.1は使用、0は使用しない、デフォルトは1です.
-t
-tオプションは、指定したコマンドに対してデータムテストを行うことができます.
[root@vmzq1l0l ~]# redis-benchmark -t get,set -q
SET: 59453.03 requests per second
GET: 60901.34 requests per second

–csv
-csvオプションは結果をcsv形式で出力し、Excelへのエクスポートなどの後続処理を容易にします.
[root@vmzq1l0l ~]# redis-benchmark -t get,set -q --csv
"SET","63532.40"
"GET","81967.21"