Redis Sentinel は分散アーキテクチャです (ここでの分散とは、Redis データ ノード、Sentinel ノード コレクション、クライアントが複数の物理ノードに分散されているアーキテクチャを指します)。これには、複数の Sentinel ノードが含まれます。各 Sentinel ノードは、データ ノードと他の Sentinel ノードを監視し、ノードが到達不能であることを検出すると、そのノードをオフラインとしてマークします。 (推奨される学習: Redis ビデオ チュートリアル )
特定されたマスター ノードが存在する場合、他の Sentinel ノードとも「ネゴシエート」します。ほとんどの Sentinel ノードがマスター ノードが利用できないと判断した場合、その場合、自動フェイルオーバーを完了するために Sentinel ノードが選択され、Redis アプリケーションにこの変更をリアルタイムで通知します。
プロセス全体は完全に自動であり、手動介入を必要としないため、このソリューションは Redis の高可用性の問題を効果的に解決します。
Redis Sentinel には次の機能があります:
監視: Sentinel ノードは、Redis データ ノード (マスターとスレーブを含む) および他の Sentinel ノードが到達可能かどうかを定期的に検出します。 。
通知: Sentinel ノードはフェイルオーバー結果をアプリケーションに通知します。
自動フェイルオーバー: マスターが正常に動作しない場合、Sentinel はスレーブ ノードをマスター ノードに昇格させ、その後の正しいマスター/スレーブ関係を維持します。
構成プロバイダー: Redis Sentinel 構造では、クライアントは初期化中に Sentinel ノード コレクションに接続し、そこからマスター ノード情報を取得します。
Redis および Redis Sentinel の起動
構成ファイルが変更されました。 通常、redis を監視するには少なくとも 3 つのセンチネルが必要ですが、ポートを変更することで複数のセンチネル サービスを開始できます。
メイン サーバーの IP とポートを構成します。リスニング ポートを 6380 に変更し、重み 2 を追加します。ここでの重みは、マスター サーバーをアップグレードする必要があるサーバーを計算するために使用されます。
Redis がインストールされたら、次のコマンドを使用して Redis と Redis Sentinel (Sentinel) を開始できます
# 使用默认的配置文件 ./src/redis-server ../redis.conf # 使用默认的配置文件 ./src/redis-sentinel ../sentinel.conf
Redis 関連の技術記事の詳細については、Redis 入門チュートリアル#をご覧ください。 ##学びのコラム!
以上がRedis Sentinel クライアントの使用方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。