Redis設計と実装(8)--ソート、遅いクエリー・ログ、モニタ
15201 ワード
一、並べ替え
SORTは1つの数値のkeyを並べ替えます
1、alpha文字列タイプのキーをソートする
2、asc/desc
redisデフォルト昇順ソートasc
descとは反対
3、by
ウェイトに基づいてソートします.
4、limit
5、get
getモードでマッチングしてフォーマットする
6、storeソート結果の保存
7、上記オプションの実行順序
a、並べ替え:alpha、asc、desc、by
b、制限結果セット:limit
c、外部キーの取得:get
d、ソート結果の保存:store
二、遅いクエリーログ
タイムアウトミリ秒数の設定:slowlog-slower-than
最大レコード数の設定:slowlog-max-len
ログの表示:slowlog get
三、モニタモニタ
モニタクライアントの実行:
クライアントを要求し、コマンドを実行します.
モニタ、監視:
SORTは1つの数値のkeyを並べ替えます
1、alpha文字列タイプのキーをソートする
2、asc/desc
redisデフォルト昇順ソートasc
descとは反対
3、by
ウェイトに基づいてソートします.
127.0.0.1:6379> sadd usres "vip" "ordinary" "visotor"
(integer) 3
127.0.0.1:6379> sort usres alpha
1) "ordinary"
2) "vip"
3) "visotor"
127.0.0.1:6379> mset vip-sort 1 ordinary-sort 0 visotor-sort -1
OK
127.0.0.1:6379> sort usres by *-sort
1) "visotor"
2) "ordinary"
3) "vip"
127.0.0.1:6379>
4、limit
127.0.0.1:6379> sort usres alpha limit 0 2
1) "ordinary"
2) "vip"
127.0.0.1:6379>
5、get
getモードでマッチングしてフォーマットする
127.0.0.1:6379> sort usres alpha
1) "ordinary"
2) "vip"
3) "visotor"
127.0.0.1:6379>
127.0.0.1:6379> set vip "sc"
OK
127.0.0.1:6379> set ordinary "kk"
OK
127.0.0.1:6379> set visotor "123ewdfrgv"
OK
127.0.0.1:6379> sort usres alpha get *
1) "kk"
2) "sc"
3) "123ewdfrgv"
127.0.0.1:6379>
6、storeソート結果の保存
127.0.0.1:6379> sort usres alpha get * store names
(integer) 3
127.0.0.1:6379> lrange names 0 -1
1) "kk"
2) "sc"
3) "123ewdfrgv"
127.0.0.1:6379>
7、上記オプションの実行順序
a、並べ替え:alpha、asc、desc、by
b、制限結果セット:limit
c、外部キーの取得:get
d、ソート結果の保存:store
二、遅いクエリーログ
タイムアウトミリ秒数の設定:slowlog-slower-than
127.0.0.1:6379> config set slowlog-slower-than 0
OK
最大レコード数の設定:slowlog-max-len
127.0.0.1:6379> config set slowlog-max-len 3
OK
ログの表示:slowlog get
127.0.0.1:6379> set sc "sun"
OK
127.0.0.1:6379> set y "yuan"
OK
127.0.0.1:6379> set c "ong"
OK
127.0.0.1:6379> slowlog get
1) 1) (integer) 8 //
2) (integer) 1520643052 //
3) (integer) 4 //
4) 1) "set" //
2) "c"
3) "ong"
5) "127.0.0.1:34010"
6) ""
2) 1) (integer) 7
2) (integer) 1520643032
3) (integer) 3
4) 1) "set"
2) "y"
3) "yuan"
5) "127.0.0.1:34010"
6) ""
3) 1) (integer) 6
2) (integer) 1520643024
3) (integer) 5
4) 1) "set"
2) "sc"
3) "sun"
5) "127.0.0.1:34010"
6) ""
三、モニタモニタ
モニタクライアントの実行:
127.0.0.1:6379> monitor
OK
クライアントを要求し、コマンドを実行します.
# redis-cli
127.0.0.1:6379> set name "sc"
OK
127.0.0.1:6379>
モニタ、監視:
127.0.0.1:6379> monitor
OK
1520643372.474104 [0 127.0.0.1:34012] "COMMAND"
1520643389.095506 [0 127.0.0.1:34012] "set" "name" "sc"