Redisの構成と持続性
redisはK/V構造の非関係型データベースであり,分散シーンに多く用いられる.
redisのプロファイルは前の記事で述べたように、次にこのプロファイルの内容を見てみましょう.
GENERAL構成セグメント
NETWORK構成セグメント
SECURITY構成セグメント
LIMITS構成セグメント
SLOW LOG構成セグメント
ADVANCED CONFIG構成セグメント
以上、redisプロファイルのコンフィギュレーション項目の説明ですが、以下、redisの永続化特性について説明します.
redisのデータはメモリに格納されていますが、デバイスが再起動するとディスクからデータを読み取り、redisデータベースを再構築する必要があります.これはredisの永続化機能に使用されます.
2つの永続化の実装:
RDB snapshotting
特徴:
バイナリフォーマット;事前にカスタマイズされたポリシーに従って、メモリからディスクにデータを周期的に同期します.データファイルのデフォルトはdumpです.rdb
AOF ppend Only File, fsync
特徴:
指定したファイルの末尾に書き込むたびに実現される持続性を記録する.redisが再起動されると、ファイル内のコマンドを再実行してメモリからデータベースを再構築できます.
RDBの関連構成:SNAPSHOTTING構成セグメント
AOF配置:APPEND ONLY MODE配置セグメント
両者の違いをまとめる:
1)RDBとAOFは同時に行われず、同時にオンの場合はAOFが優先される.
2)RDBは既定のポリシーに従って、定期的にメモリからディスクに同期する操作を実行し、欠点はポイント還元ができないことである.
3)AOFは書き込み操作毎または毎秒メモリデータを指定ファイルの末尾に追従し、時点還元が可能である.欠点は頻繁なIO操作である.
注意:永続的なメカニズム自体がバックアップに取って代わることはできません.バックアップポリシーを作成し、redisライブラリを定期的にバックアップする必要があります.
の最後の部分
redisのプロファイルは前の記事で述べたように、次にこのプロファイルの内容を見てみましょう.
grep ^### /etc/redis.conf
################################## INCLUDES ################################### //
################################## NETWORK ##################################### //
################################# GENERAL ##################################### //
################################ SNAPSHOTTING ################################ // ,
################################# REPLICATION ################################# //
################################## SECURITY ################################### // ,
################################### LIMITS #################################### // , 、
############################## APPEND ONLY MODE ############################### //AOF,
################################ LUA SCRIPTING ############################### //lua
################################ REDIS CLUSTER ############################### //redis
################################## SLOW LOG ################################### //
################################ LATENCY MONITOR ############################## //
############################# EVENT NOTIFICATION ############################## //
############################### ADVANCED CONFIG ############################### //
GENERAL構成セグメント
daemonize no #
supervised no
pidfile /var/run/redis/redis.pid #
loglevel notice #
logfile /var/log/redis/redis.log #
databases 16
# , 16 , , 0 , 0
NETWORK構成セグメント
bind 127.0.0.1 # ip , ip ,0.0.0.0
port 6379 #
protected-mode yes # , bind auth
tcp-backlog 511
timeout 0 # ,0
tcp-keepalive 300 #tcp ,
SECURITY構成セグメント
requirepass centos
# requirepass , , , :
redis-cli
127.0.0.1:6379> SELECT 14
(error) NOAUTH Authentication required.
127.0.0.1:6379> AUTH centos
OK
127.0.0.1:6379> SELECT 14
OK
127.0.0.1:6379[14]>
# ,
LIMITS構成セグメント
maxclients 10000 # , redis
maxmemory # , , 。redis ,
maxmemory-policy noeviction # , 。 noeviction volatile-lru, allkeys-lru
maxmemory-samples 5
SLOW LOG構成セグメント
slowlog-log-slower-than 10000 # , redis
slowlog-max-len 128 #
ADVANCED CONFIG構成セグメント
hash-max-ziplist-entries 512 #hash
hash-max-ziplist-value 64 #hash ,
#
client-output-buffer-limit normal 0 0 0 # 0 ,normal
client-output-buffer-limit slave 256mb 64mb 60 # 256mb, 64mb, 60s,slave
client-output-buffer-limit pubsub 32mb 8mb 60 # ,redis ,pubsub
以上、redisプロファイルのコンフィギュレーション項目の説明ですが、以下、redisの永続化特性について説明します.
redisのデータはメモリに格納されていますが、デバイスが再起動するとディスクからデータを読み取り、redisデータベースを再構築する必要があります.これはredisの永続化機能に使用されます.
2つの永続化の実装:
RDB snapshotting
特徴:
バイナリフォーマット;事前にカスタマイズされたポリシーに従って、メモリからディスクにデータを周期的に同期します.データファイルのデフォルトはdumpです.rdb
AOF ppend Only File, fsync
特徴:
指定したファイルの末尾に書き込むたびに実現される持続性を記録する.redisが再起動されると、ファイル内のコマンドを再実行してメモリからデータベースを再構築できます.
RDBの関連構成:SNAPSHOTTING構成セグメント
save
save 900 1 # 900 1
save 300 10 # 300 10
save 60 10000 # 60 10000
# RDB ,
stop-writes-on-bgsave-error yes # bgsave ,bgsave
rdbcompression yes #
rdbchecksum yes #
dbfilename dump.rdb # rdb ,
dir /var/lib/redis # , IO
SAVE BGSAVE ;
SAVE: , , , ;
BGSAVE: ;backgroud, ,
AOF配置:APPEND ONLY MODE配置セグメント
appendonly no
appendfilename "appendonly.aof" #aof
appendfsync everysec # aof , , 1 , IO
no-appendfsync-on-rewrite no # aof fsync, no, 。
auto-aof-rewrite-percentage 100 # 100% aof , 100mb, 100mb aof
auto-aof-rewrite-min-size 64mb # aof , aof 64mb
両者の違いをまとめる:
1)RDBとAOFは同時に行われず、同時にオンの場合はAOFが優先される.
2)RDBは既定のポリシーに従って、定期的にメモリからディスクに同期する操作を実行し、欠点はポイント還元ができないことである.
3)AOFは書き込み操作毎または毎秒メモリデータを指定ファイルの末尾に追従し、時点還元が可能である.欠点は頻繁なIO操作である.
注意:永続的なメカニズム自体がバックアップに取って代わることはできません.バックアップポリシーを作成し、redisライブラリを定期的にバックアップする必要があります.
の最後の部分