これは、実際には、60秒ごとにバックアップを取得していることを意味しますか?
いいえ 。 Redisは60秒後にバックグラウンド保存を行います。少なくとも10000個のキーが変更されている場合 。それ以外の場合は、バックグラウンド保存は行われません。
appendonlyonとappendfsynceverysecを使用すると、パフォーマンスが低下しますか? CPUにヒットしますか?書き込み負荷は高い側にあります。
それは多くのものに依存します、例えば。ディスクパフォーマンス(SSD VS HDD)、書き込み/読み取り負荷(QPS)、データモデルなど。特定の環境で独自のデータを使用してベンチマークを実行する必要があります。
これらの新しい設定でredisサーバーを再起動しても、データの最後の60秒は失われますよね?
いいえ 。 AOFとRDBの両方をオンにすると、Redisが再起動すると、AOFファイルがデータベースの再構築に使用されます。 appendfsync everysec
に設定しているので 、最後の1秒のみが失われます データの。
再起動時間は気になるものですか?私のdump.rdbファイルは小さいです。 〜90MB。
AOFをオンにすると、Redisが再起動すると、AOFファイルのログが再生されてデータベースが再構築されます。通常、AOFファイルはRDBファイルよりも大きく、RDBファイルからの回復よりも遅い場合があります。あなたはそれについて心配する必要がありますか?特定の環境で独自のデータを使用してベンチマークを実行します。
編集
重要なお知らせ
RDB保存を使用するようにRedisをすでに設定していると仮定し、Redisに大量のデータを書き込みます。しばらくして、AOF保存をオンにします。 設定ファイルを変更してAOFをオンにし、REDISを再起動しないでください。変更すると、すべてが失われます。 。
なぜなら、appendonly yes
を設定すると redis.confで、Redisを再起動すると、ファイルが存在するかどうかに関係なく、AOFファイルからデータが読み込まれます。ファイルが存在しない場合は、空のファイルを作成し、その空のファイルからデータを読み込もうとします。したがって、すべてを失うことになります。
実際、AOFをオンにするためにRedisを再起動する必要はありません。代わりに、config set
を使用できます 動的にオンにするコマンド:config set appendonly yes
。