Redisの永続化メカニズムの分析
Redis は、キャッシュ、タスク キュー、メッセージ ミドルウェアなどのシナリオでよく使用される、高性能のオープン ソース インメモリ データベースです。ただし、Redis はメモリに基づいて動作するため、停電などの異常事態が発生するとデータ損失が発生します。そのため、Redis はデータのセキュリティと信頼性を確保するために 2 つの永続化メカニズムを提供します。以下では、これら 2 つの永続化メカニズムを分析してみましょう。
- RDB 永続化
RDB (redis データベース) は、Redis のデフォルトの永続化方法です。特定の条件が満たされると、Redis はメモリ内のデータ スナップショットをディスク上の RDB ファイルに書き込みます。 RDB ファイルの形式はバイナリで、現時点でのデータベースのすべてのキーと値のペア情報が含まれています。
RDB 永続化の利点は、RDB ファイルをメモリにロードするだけで済むため、必要なスペースが少なく、データを迅速に復元できることです。
RDB 永続性をトリガーするには 2 つの方法があります:
1) 手動操作
Redis クライアントで SAVE または BGSAVE コマンドを実行して、RDB 永続性を手動でトリガーします。 SAVE コマンドは Redis サーバーをブロックし、RDB ファイルが書き込まれるまで戻りません。BGSAVE を使用すると、Redis サーバーはバックグラウンドで RDB 永続化操作を実行でき、Redis サーバーの通常のサービスはブロックされません。
2) 自動トリガー
Redis の自動トリガー ルールを設定し、ルールが満たされると、RDB 永続化操作が自動的に実行されます。これは、redis.conf ファイルの次の設定を通じて構成できます。
save 900 1
save 300 10
save 60 10000
ここでの設定は、少なくとも 1 つのキーと値のペアが変更されると、300 秒以内に少なくとも 10 のキーと値のペアが変更され、60 秒以内に少なくとも 10,000 のキーと値のペアが変更されると、RDB 永続化操作がトリガーされます。複数のルールが設定されている場合、Redis は設定された順序で RDB 永続化操作を実行することに注意してください。
- AOF 永続性
AOF (追加専用ファイル) 永続性は、追加ベースの永続化メカニズムです。 Redis がデータベースを変更するコマンドを受け取ると、そのコマンドが実行されるだけでなく、AOF ファイルの末尾に追加されます。
AOF 永続性の利点は、データベースを変更するすべての操作が AOF に記録されるため、データの損失が最小限に抑えられ、AOF ファイルのテキスト形式が読みやすく理解しやすいため、データの安全性が向上することです。 。
AOF 永続性をトリガーするには 2 つの方法があります:
1) 手動操作
Redis クライアントで BGREWRITEAOF コマンドを実行して、AOF 永続性を手動でトリガーします。このコマンドは、AOF ファイルの書き換え操作をバックグラウンドで実行し、Redis によって実行されたコマンドを新しい AOF ファイルに再記録し、データベースに影響を与えるコマンドのみを保持します。
2) 自動トリガー
redis.conf ファイルの構成を通じて自動トリガー ルールを設定できます。ルールが満たされると、AOF ファイルが自動的に書き換えられます:
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
ここでの設定は、AOF ファイルのサイズが 64MB を超えたとき、または新しい AOF ファイルのサイズが 64MB を超えたときを示します。 AOF 書き換えは既存の AOF ファイルのサイズが 100 倍を超えると、AOF ファイルの書き換えがトリガーされます。
まとめると、RDB 永続化と AOF 永続化にはそれぞれ利点と欠点があり、実際の状況に応じて選択して構成する必要があります。同時に、永続化メカニズムを使用している間は、データのセキュリティを確保するためにデータのバックアップとリカバリのテストも実行する必要があることに注意してください。
以上がRedisの永続化メカニズムの分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Redisクラスターモードは、シャードを介してRedisインスタンスを複数のサーバーに展開し、スケーラビリティと可用性を向上させます。構造の手順は次のとおりです。異なるポートで奇妙なRedisインスタンスを作成します。 3つのセンチネルインスタンスを作成し、Redisインスタンスを監視し、フェールオーバーを監視します。 Sentinel構成ファイルを構成し、Redisインスタンス情報とフェールオーバー設定の監視を追加します。 Redisインスタンス構成ファイルを構成し、クラスターモードを有効にし、クラスター情報ファイルパスを指定します。各Redisインスタンスの情報を含むnodes.confファイルを作成します。クラスターを起動し、CREATEコマンドを実行してクラスターを作成し、レプリカの数を指定します。クラスターにログインしてクラスター情報コマンドを実行して、クラスターステータスを確認します。作る

Redisデータをクリアする方法:Flushallコマンドを使用して、すべての重要な値をクリアします。 FlushDBコマンドを使用して、現在選択されているデータベースのキー値をクリアします。 [選択]を使用してデータベースを切り替え、FlushDBを使用して複数のデータベースをクリアします。 DELコマンドを使用して、特定のキーを削除します。 Redis-CLIツールを使用してデータをクリアします。

Redisのキューを読むには、キュー名を取得し、LPOPコマンドを使用して要素を読み、空のキューを処理する必要があります。特定の手順は次のとおりです。キュー名を取得します:「キュー:キュー」などの「キュー:」のプレフィックスで名前を付けます。 LPOPコマンドを使用します。キューのヘッドから要素を排出し、LPOP Queue:My-Queueなどの値を返します。空のキューの処理:キューが空の場合、LPOPはnilを返し、要素を読む前にキューが存在するかどうかを確認できます。

Redis指令を使用するには、次の手順が必要です。Redisクライアントを開きます。コマンド(動詞キー値)を入力します。必要なパラメーターを提供します(指示ごとに異なります)。 Enterを押してコマンドを実行します。 Redisは、操作の結果を示す応答を返します(通常はOKまたは-ERR)。

Redisを使用して操作をロックするには、setnxコマンドを介してロックを取得し、有効期限を設定するために有効期限コマンドを使用する必要があります。特定の手順は次のとおりです。(1)SETNXコマンドを使用して、キー価値ペアを設定しようとします。 (2)expireコマンドを使用して、ロックの有効期限を設定します。 (3)Delコマンドを使用して、ロックが不要になったときにロックを削除します。

Redisソースコードを理解する最良の方法は、段階的に進むことです。Redisの基本に精通してください。開始点として特定のモジュールまたは機能を選択します。モジュールまたは機能のエントリポイントから始めて、行ごとにコードを表示します。関数コールチェーンを介してコードを表示します。 Redisが使用する基礎となるデータ構造に精通してください。 Redisが使用するアルゴリズムを特定します。

Redisコマンドラインツール(Redis-Cli)を使用して、次の手順を使用してRedisを管理および操作します。サーバーに接続し、アドレスとポートを指定します。コマンド名とパラメーターを使用して、コマンドをサーバーに送信します。ヘルプコマンドを使用して、特定のコマンドのヘルプ情報を表示します。 QUITコマンドを使用して、コマンドラインツールを終了します。

Centosシステムでは、Redis構成ファイルを変更するか、Redisコマンドを使用して悪意のあるスクリプトがあまりにも多くのリソースを消費しないようにすることにより、LUAスクリプトの実行時間を制限できます。方法1:Redis構成ファイルを変更し、Redis構成ファイルを見つけます:Redis構成ファイルは通常/etc/redis/redis.confにあります。構成ファイルの編集:テキストエディター(VIやNANOなど)を使用して構成ファイルを開きます:sudovi/etc/redis/redis.conf luaスクリプト実行時間制限を設定します。
