Redis 構成
Redisの設定ファイルはRedisのインストールディレクトリにあり、ファイル名はredis.confです。
CONFIGコマンドを使用して構成項目を表示または設定できます。
構文
Redis CONFIG コマンドの形式は次のとおりです:
redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME
Instance
redis 127.0.0.1:6379> CONFIG GET loglevel 1) "loglevel" 2) "notice"
すべての構成項目を取得するには、* 番号を使用します:
Instance
redis 127.0.0.1:6379> CONFIG GET * 1) "dbfilename" 2) "dump.rdb" 3) "requirepass" 4) "" 5) "masterauth" 6) "" 7) "unixsocket" 8) "" 9) "logfile" 10) "" 11) "pidfile" 12) "/var/run/redis.pid" 13) "maxmemory" 14) "0" 15) "maxmemory-samples" 16) "3" 17) "timeout" 18) "0" 19) "tcp-keepalive" 20) "0" 21) "auto-aof-rewrite-percentage" 22) "100" 23) "auto-aof-rewrite-min-size" 24) "67108864" 25) "hash-max-ziplist-entries" 26) "512" 27) "hash-max-ziplist-value" 28) "64" 29) "list-max-ziplist-entries" 30) "512" 31) "list-max-ziplist-value" 32) "64" 33) "set-max-intset-entries" 34) "512" 35) "zset-max-ziplist-entries" 36) "128" 37) "zset-max-ziplist-value" 38) "64" 39) "hll-sparse-max-bytes" 40) "3000" 41) "lua-time-limit" 42) "5000" 43) "slowlog-log-slower-than" 44) "10000" 45) "latency-monitor-threshold" 46) "0" 47) "slowlog-max-len" 48) "128" 49) "port" 50) "6379" 51) "tcp-backlog" 52) "511" 53) "databases" 54) "16" 55) "repl-ping-slave-period" 56) "10" 57) "repl-timeout" 58) "60" 59) "repl-backlog-size" 60) "1048576" 61) "repl-backlog-ttl" 62) "3600" 63) "maxclients" 64) "4064" 65) "watchdog-period" 66) "0" 67) "slave-priority" 68) "100" 69) "min-slaves-to-write" 70) "0" 71) "min-slaves-max-lag" 72) "10" 73) "hz" 74) "10" 75) "no-appendfsync-on-rewrite" 76) "no" 77) "slave-serve-stale-data" 78) "yes" 79) "slave-read-only" 80) "yes" 81) "stop-writes-on-bgsave-error" 82) "yes" 83) "daemonize" 84) "no" 85) "rdbcompression" 86) "yes" 87) "rdbchecksum" 88) "yes" 89) "activerehashing" 90) "yes" 91) "repl-disable-tcp-nodelay" 92) "no" 93) "aof-rewrite-incremental-fsync" 94) "yes" 95) "appendonly" 96) "no" 97) "dir" 98) "/home/deepak/Downloads/redis-2.8.13/src" 99) "maxmemory-policy" 100) "volatile-lru" 101) "appendfsync" 102) "everysec" 103) "save" 104) "3600 1 300 100 60 10000" 105) "loglevel" 106) "notice" 107) "client-output-buffer-limit" 108) "normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60" 109) "unixsocketperm" 110) "0" 111) "slaveof" 112) "" 113) "notify-keyspace-events" 114) "" 115) "bind" 116) ""
Edit Configuration
を変更できますredis.conf ファイルを使用するか、CONFIG set コマンドを使用して構成を変更します。
構文
CONFIG SET基本的なコマンド構文:
redis 127.0.0.1:6379> CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE
Example
redis 127.0.0.1:6379> CONFIG SET loglevel "notice" OK redis 127.0.0.1:6379> CONFIG GET loglevel 1) "loglevel" 2) "notice"
パラメータの説明
redis.conf 構成項目の説明は次のとおりです:
1. Redis はデフォルトではデーモンとして実行されません。これを使用できます。構成項目を変更し、yes を使用してデーモンを有効にします
daemonize no
2. Redis がデーモンとして実行されている場合、Redis は pid を /var/run/redis.pid ファイルに書き込みます。デフォルトでは、pidfile を介して渡すことができます。
pidfile /var/run/redis.pid
を指定します。 デフォルトのポートは 6379 です。著者はブログ投稿の 1 つで説明しています。なぜ 6379 がデフォルトのポートとして選択されているかというと、6379 は電話ボタンの MERZ に対応する番号であり、MERZ はイタリアの歌手 Alessia Merz の名前から取られているからです
ポート 63794。
bind 127.0.0.15.when 0と指定すると、この機能をオフにすることを意味します
timeout 3006. Redis は、デバッグ、冗長、通知、警告の合計 4 つのレベルをサポートします。デフォルトは冗長ですログレベル
7。 Redis はデーモン モードで実行するように構成され、ログ モードは標準出力として構成され、ログは /dev/null に送信されます
logfile stdout
データベースの数を設定します。デフォルトのデータベースは 8 です。 0 の場合は、SELECT <dbid> コマンドを使用して、接続
databases 16
9 でデータベース ID を指定し、データを同期します。データ ファイルに複数の条件を一致させることができます
save <seconds> <changes>
Redis のデフォルト設定 ドキュメントには 3 つの条件が指定されています:
save 900 1
save 300 10
save 60 10000
は、900秒(15分)以内に1回変更、300秒(5分)以内に10回変更、60秒以内に1回変更0000回を意味します。
10. ローカル データベースにデータを保存するときにデータを圧縮するかどうかを指定します。デフォルトは [はい] です。CPU 時間を節約したい場合は、このオプションをオフにします。データベース ファイルが巨大になる
rdbcompression はい
11. ローカル データベース ファイル名を指定します。デフォルト値は dump.rdb
です。 dbfilename dump.rdb
12. ローカル データベース ストレージを指定します。ディレクトリ
dir ./
13. ローカルマシンがスレーブとして機能するときに設定し、Redis の起動時にマスターサービスの IP アドレスとポートを設定します。マスターサービスがパスワードで保護されている場合、マスターに接続するためのスレーブサービスのパスワード
masterauth <master-password>
15. Redis 接続パスワードを設定します。が構成されている場合、クライアントは Redis に接続するときにパスワードを必要とします。 AUTH <password> コマンドを使用してパスワードを指定します。これはデフォルトではオフになっています
requirepass foabared
16 でクライアント接続の最大数を設定します。 Redis が同時に開くことができるクライアント接続の数は、Redis プロセスが開くことができる数と同じです。 maxclients が 0 に設定されている場合、制限はありません。クライアント接続数が制限に達すると、Redis は新しい接続を閉じ、クライアントの最大数に達したというエラー メッセージをクライアントに返します
maxclients 128
17。Redis の最大メモリ制限を指定します。 Redis は、最大メモリに達した後、最初に期限切れまたは期限切れのキーをクリアしようとしますが、このメソッドが処理されると、依然として最大メモリ設定に達しているため、書き込み操作はできなくなります。読み取り操作を実行することは可能です。 Redis の新しい VM メカニズムは、キーをメモリに保存し、値をスワップ領域に保存します
maxmemory <bytes>
18. Redis はデフォルトでデータをディスクに非同期に書き込みます。これがオンになっていない場合、停電中に一定期間データが失われる可能性があります。 Redis 自体は上記の保存条件に従ってデータ ファイルを同期するため、一部のデータは一定期間のみメモリ内に存在します。デフォルトは no
appendonly no
19 です。デフォルトは appendonly.aof
appendfilename appendonly.aof
20 です。 3 つのオプションが使用可能です。 値:
no: オペレーティング システムがデータ キャッシュをディスクに同期するのを待機することを示します (高速)
always: fsync() を手動で呼び出してデータをディスクに書き込むことを示します各更新操作後 (低速、安全)
everysec: 1 秒に 1 回の同期を示します (妥協、デフォルト値)
appendfsync Everysec
21. 仮想メモリメカニズムを有効にするかどうかを指定します。デフォルト値は no です。簡単に説明すると、VM メカニズムはデータをページに保存し、Redis はアクセスの少ないページ、つまりコールド データをディスクにスワップし、アクセスの多いページはディスクから自動的にスワップアウトされます。メモリ (Redis の VM メカニズムについては、後の記事で詳しく分析します)
vm-enabled no
22。 仮想メモリ ファイル パス、デフォルト値は /tmp/redis.swap です。複数の Redis インスタンスで共有vm-swap-file /tmp/redis.swap
23. vm-max-memory より大きいデータはすべて仮想メモリに保存します。設定では、すべてのインデックス データがメモリに保存されます (Redis のインデックス データはキーです)。つまり、vm-max-memory が 0 に設定されている場合、すべての値が実際にディスク上に存在します。デフォルト値は 0vm-max-memory 0
24 です。 Redis スワップ ファイルは複数のページに分割して保存できますが、1 つのページを複数の vm で共有することはできません。 -page-size は、保存されるデータのサイズに応じて設定されます。非常に大きなオブジェクトを保存する場合は、ページ サイズを 32 バイトまたは 64 バイトに設定するのが最適です。ページ。わからない場合は、デフォルト値vm-page-size 32
25 を使用してください。これは、ページ テーブル (ページを示すビットマップ) であるためです。空きまたは使用済み) がメモリに配置され、ディスク上の 8 ページごとに 1 バイトのメモリが消費されます。vm-pages 134217728
26. スワップ ファイルにアクセスするスレッドの数を設定します。0 に設定すると、すべての操作がマシンのコア数を超えないようにするのが最善です。スワップ ファイルはシリアルになるため、比較的長い遅延が発生する可能性があります。デフォルト値は 4vm-max-threads 4
27 です。クライアントに応答するときに、小さいパケットを 1 つのパケットに結合して送信するかどうかを設定します。デフォルトはglueoutputbuf yes です。
28. 特定の数値または最大要素が特定の臨界値を超えた場合に使用される特別なハッシュ アルゴリズムを指定しますhash-max-zipmap-entries 64
hash-max-zipmap-値 512
29. リセットハッシュを有効にするかどうかを指定します。デフォルトはオンです (詳細は Redis ハッシュアルゴリズムを紹介するときに説明します)activerehashing はい30。ファイルを使用すると、同じホスト上の複数の Redis インスタンス間で同じ構成ファイルを使用でき、各インスタンスには独自の固有の構成ファイルがあります
include /path/to/local.conf