ホームページ >バックエンド開発 >PHPの問題 >phpredis はクラスタリングをサポートしていますか?

phpredis はクラスタリングをサポートしていますか?

(*-*)浩
(*-*)浩オリジナル
2019-10-11 14:25:104287ブラウズ

php Redis クラスターを操作するには、よりパフォーマンスの高い C 拡張機能である phpredis 拡張機能を使用する必要があります。

phpredis はクラスタリングをサポートしていますか?

#phpredis クラスターの使用法 (推奨学習: PHP ビデオ チュートリアル )

<?php
$redis_list = [&#39;10.30.5.162:7000&#39;,&#39;10.30.5.163:7000&#39;,&#39;10.30.5.163:7001&#39;];
$client = new RedisCluster(NUll,$redis_list);
echo $client->get(&#39;new_item_key:d89b561fb759fd533a8c2781ef15dd5f&#39;)

コードの説明

最初のパラメータは NULL です。理由はわかりません。聞かないでください。とにかく、ドキュメントが見つからず、この記事も理解できませんでした。

2 番目のパラメーターは、接続する必要がある Redis クラスターのマスターサーバーのリストです。マスターが 3 つあるので、3 つだけ入力するか、マスター ノードを 1 つ入力することも、スレーブ ノードを 1 つ入力することもできますが、パフォーマンスは異なります。

クラスターの原則

任意のノード アドレスを入力することで redisCluster を操作できるのはなぜですか?

クラスター モードでは、Redis はキー関連のコマンドを受け取ります。キーに対応するスロットを計算します。

スレーブ ノードが初期化されると、まず redis コマンドがスレーブ ノードに送信されます。

スレーブ ノードは、スロットに従って対応するノードを見つけます。ノードがそれ自体である場合、キー コマンドを処理します。

ノード自体でない場合、MOVED リダイレクト エラーが発生し、クライアントに正しいノードを要求するように通知されます。このプロセスは MOVED リダイレクトと呼ばれます

phpredis はクラスタリングをサポートしていますか?

リダイレクト情報には、キーに対応するスロットとそのスロットを担当するノード アドレスが含まれており、この情報に基づいて、クライアントは次のアドレスにリダイレクトできます。正しい ノードがリクエストを開始すると、phpredis クライアントはリダイレクト情報に基づいてキーが配置されているノードへのリクエストを直接開始してデータを取得できます

以上がphpredis はクラスタリングをサポートしていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

関連記事

続きを見る