redisフルメモリ運転
1714 ワード
一部の使用シーンでは、redisの永続化を使用する必要はありません.逆に、redisのメモリデータベースの特性を発揮し、完全なメモリ実行を実現し、必要な高性能を達成する必要があります.
Redis自体は永続化をサポートし、一定時間間隔またはトリガ操作によりメモリ内のデータをディスクに同期して永続化を保証します.Redisは2つの持続化方式をサポートし、1つはSnapshotting(スナップショット)であり、dumpとして保存する.rdbファイルは、デフォルトの方法でもあり、Append-only file(aofと略す)の方法で保存する.aofファイル.
Snapshotスナップショットは、saveまたはbgsaveコマンドを使用してredisにスナップショットの永続化を通知します.save操作は、redisがすべてのクライアントの要求を1つのプライマリ・スレッドで処理するため、すべてのクライアント要求をブロックするプライマリ・スレッドにスナップショットを保存します.なのでおすすめしません.もう1つ注意しなければならないのは、スナップショットの永続化のたびにメモリデータをディスクに完全に書き込むことであり、インクリメンタルのみがインクリメンタルデータを同期するわけではありません.データ量が多いと書き込み操作が多くなり、必然的に大量のディスクIO操作を引き起こし、パフォーマンスに深刻な影響を及ぼす可能性があります.
デフォルトのスナップショットrdbの保存方法ではredis.confの中の配置は以下の通りです.
スナップショットを閉じる必要がある場合は、これらの行をコメントしてredisを再起動するだけです.
実行中のインスタンスの場合はredis-cliのコマンドを使用します.
設定をオンラインで更新し、OKを出力すると設定に成功します.
AOFがスナップショット方式よりも優れた持続性を持っているのは、aof持続化方式を使用するとredisが受信した書き込みごとに
コマンドはwrite関数でファイルに追加されます(デフォルトはappendonly.aof).redisが再起動するとファイル内で再実行されます
保存された書き込みコマンドは、メモリ内のデータベース全体のコンテンツを再構築します.
デフォルト設定は次のとおりです.
プロファイルを更新する必要があります.
オンライン更新設定の使用
この2つの構成により、redisは完全にメモリで実行できます.
手動で永続化を行う場合は、Redisのbgsaveとbgrewriteaofを使用して手動で永続化を行うことができます.
Redis自体は永続化をサポートし、一定時間間隔またはトリガ操作によりメモリ内のデータをディスクに同期して永続化を保証します.Redisは2つの持続化方式をサポートし、1つはSnapshotting(スナップショット)であり、dumpとして保存する.rdbファイルは、デフォルトの方法でもあり、Append-only file(aofと略す)の方法で保存する.aofファイル.
Snapshotスナップショットは、saveまたはbgsaveコマンドを使用してredisにスナップショットの永続化を通知します.save操作は、redisがすべてのクライアントの要求を1つのプライマリ・スレッドで処理するため、すべてのクライアント要求をブロックするプライマリ・スレッドにスナップショットを保存します.なのでおすすめしません.もう1つ注意しなければならないのは、スナップショットの永続化のたびにメモリデータをディスクに完全に書き込むことであり、インクリメンタルのみがインクリメンタルデータを同期するわけではありません.データ量が多いと書き込み操作が多くなり、必然的に大量のディスクIO操作を引き起こし、パフォーマンスに深刻な影響を及ぼす可能性があります.
デフォルトのスナップショットrdbの保存方法ではredis.confの中の配置は以下の通りです.
save 900 1 #900 1 key ,
save 300 10 #300 10 key ,
save 60 10000
スナップショットを閉じる必要がある場合は、これらの行をコメントしてredisを再起動するだけです.
実行中のインスタンスの場合はredis-cliのコマンドを使用します.
#
config get save
#
config set save ""
設定をオンラインで更新し、OKを出力すると設定に成功します.
AOFがスナップショット方式よりも優れた持続性を持っているのは、aof持続化方式を使用するとredisが受信した書き込みごとに
コマンドはwrite関数でファイルに追加されます(デフォルトはappendonly.aof).redisが再起動するとファイル内で再実行されます
保存された書き込みコマンドは、メモリ内のデータベース全体のコンテンツを再構築します.
デフォルト設定は次のとおりです.
appendonly yes //
#appendfsync always // , , ,
appendfsync everysec // , ,
#appendfsync no // , ,
プロファイルを更新する必要があります.
appendfsync no
オンライン更新設定の使用
#
config get appendfsync
#
config set appendfsync no
この2つの構成により、redisは完全にメモリで実行できます.
手動で永続化を行う場合は、Redisのbgsaveとbgrewriteaofを使用して手動で永続化を行うことができます.