Redis マスター/スレーブ レプリケーションの概要
redis のレプリケーション機能は、複数のデータベース間のデータ同期をサポートすることです。 1 つはマスター データベース (マスター) で、もう 1 つはスレーブ データベース (スレーブ) です。マスター データベースは読み取りおよび書き込み操作を実行できます。書き込み操作が発生すると、データは自動的にスレーブ データベースに同期されます。スレーブ データベースは通常、読み取り専用で受信します。 マスター データベースから同期されたデータの場合、マスター データベースは複数のスレーブ データベースを持つことができますが、スレーブ データベースは 1 つのマスター データベースのみを持つことができます。
推奨: redis 入門チュートリアル
redis のマスター/スレーブ レプリケーション機能は、データベースの読み取りと書き込みを効果的に分離し、サーバーの負荷容量を向上させることができます。メイン サーバーは主に書き込み操作を担当し、スレーブ サーバーは主に読み取り操作を担当します。
マスター/スレーブ レプリケーション プロセス:
1: スレーブ データベースが開始されると、同期コマンドがマスター データベースに送信されます。
2: 同期コマンドを受信した後、メイン データベースはバックグラウンドでスナップショットの保存を開始し (RDB 操作を実行し)、その間に受信したコマンドをキャッシュします。
3: スナップショットが完了すると、redis はスナップショット ファイルとキャッシュされたすべてのコマンドをスレーブ データベースに送信します。
4: データベースからスナップショット ファイルを受信した後、スナップショット ファイルがロードされ、受信したキャッシュされたコマンドが実行されます。
注: redis 2.8 より前のバージョン: マスター/スレーブ データベースが同期されると、スレーブ データベースはネットワーク上の理由により切断および再接続された後に上記の操作を再実行し、ダウンロードの再開はサポートされていません。 Redis2.8 以降はブレークポイントの再開をサポートしています。
注: Redis 2.8 以降では、データのセキュリティを確保するために、少なくとも N 個のスレーブ ノードがある場合にのみマスター ノードが書き込み操作を実行できるように min-slaves-to-write を構成できます。スレーブ ノードは 1 秒に 1 回マスター ノードに ping を送信し、マスター ノードは各スレーブ サーバーが最後に ping を送信した時刻を記録します。ユーザーは、構成を通じて最大ネットワーク遅延 min-slaves-max-lag と書き込み操作の実行に必要なスレーブ サーバーの最小数を指定できます。
min-slaves-to-write min-slaves-to-write 3 min-slaves-max-lag 10
少なくとも min-slaves-to-write スレーブ サーバーがある場合は、これらのサーバーの遅延値が min-slaves-max-lag 秒未満の場合、メイン サーバーはクライアントによって要求された書き込み操作を実行します。 1 つの条件が満たされない限り、書き込み操作は実行されず、マスター サーバーは書き込み操作を要求しているクライアントにエラーを返します。
2. マスター/スレーブ レプリケーションのデプロイメント:
Redis マスター/スレーブ構造は 1 つのマスターと複数のスレーブをサポートします
マスター ノード: 192.168.1.170
スレーブ ノード: 192.168.1.171
注: すべてのスレーブ ノードの構成は同じです
方法 1: 構成ファイルを手動で変更します
追加のみスレーブ ノードでの変更が必要です。redis 構成ファイルの smileof 属性では、
slaveof 192.168.1.170 6379
170 マスター ノードで redis を起動し、redis 情報情報を表示します (info コマンドを実行します)
#redis 情報情報を表示する
redis-cli 経由でスレーブノードサーバーに接続し、次のコマンドを実行します。
3. マスター/スレーブ レプリケーションで注意する必要がある問題:
① マスター/スレーブ レプリケーションを使用する場合、マスター永続性が有効になっています。または、クラッシュ後に自動的に再起動しないことを確認してください。スレーブはマスターの完全バックアップであるため、マスターが空のデータセットで再起動されると、スレーブもクリアされます。
② Redis レプリケーション機能の構成時にマスター データベースにパスワードが設定されている場合は、スレーブ データ構成ファイルの masterauth パラメーターを使用してマスター データベースのパスワードを設定する必要があります。これにより、スレーブ データベースは自動的にパスワードを取得します。 master データベースに接続するときに使用します。auth コマンドは認証されます。これは、パスワードなしのログインと同等です。
関連する推奨事項:mysql ビデオ チュートリアル:
https://www.php.cn/course/list/51.html
以上がRedis マスター/スレーブ レプリケーションの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

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

Redisのすべてのキーを表示するには、3つの方法があります。キーコマンドを使用して、指定されたパターンに一致するすべてのキーを返します。スキャンコマンドを使用してキーを繰り返し、キーのセットを返します。情報コマンドを使用して、キーの総数を取得します。

Redisは、単一のスレッドアーキテクチャを使用して、高性能、シンプルさ、一貫性を提供します。 I/Oマルチプレックス、イベントループ、ノンブロッキングI/O、共有メモリを使用して同時性を向上させますが、並行性の制限、単一の障害、および書き込み集約型のワークロードには適していません。

Redisサーバーを起動する手順には、以下が含まれます。オペレーティングシステムに従ってRedisをインストールします。 Redis-Server(Linux/Macos)またはRedis-Server.exe(Windows)を介してRedisサービスを開始します。 Redis-Cli ping(Linux/macos)またはRedis-Cli.exePing(Windows)コマンドを使用して、サービスステータスを確認します。 Redis-Cli、Python、node.jsなどのRedisクライアントを使用して、サーバーにアクセスします。

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

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