現在使用している php の主な redis 拡張機能は 2 つあります:
phpredis。これは c An を使用します。 PHP の効率的な拡張機能である predis は、PHP コードで書かれており、非常に頻繁に使用されています。
phpredis (PHP 拡張機能) メソッド (推奨学習: PHP ビデオ チュートリアル )
1. phpredis スタンドアロン メソッド
<?php $client = new Redis(); $client->connect('10.30.5.163', '7000'); echo $client->get('new_item_key:d89b561fb759fd533a8c2781ef15dd5f');
phpredis クラスターの使用法
<?php $redis_list = ['10.30.5.162:7000','10.30.5.163:7000','10.30.5.163:7001']; $client = new RedisCluster(NUll,$redis_list); echo $client->get('new_item_key:d89b561fb759fd533a8c2781ef15dd5f');
コードの説明
最初のパラメーターには NULL を渡します。理由がわかりません。とにかく、ドキュメントが見つからず、この記事も理解できませんでした。
2 番目のパラメーターは、接続する必要がある Redis クラスターのマスターサーバーのリストです。マスターが 3 つあるので、3 つだけ入力します。マスター ノードまたはスレーブ ノードを入力することもできますが、パフォーマンスが異なります。パート 4
3 を参照してください。クラスターの原則
なぜ redisCluster は任意のノード アドレスを入力することで操作できるのですか?
クラスター モードでは、Redis がキー関連のコマンドを受け取ると、最初にキーに対応するスロットを計算します。
スレーブ ノードが初期化されている場合、redis コマンドが最初にスレーブ ノードに送信されます。
スレーブ ノードは、スロットに従って対応するノードを見つけます。ノードがそれ自身の場合、キー コマンド処理されます;
MOVED 自体が処理されない場合、MOVED はエラーをリダイレクトし、クライアントに正しいノードを要求するように通知します。この処理をMOVEDリダイレクションと呼びます
リダイレクション情報には、キーに対応するスロットとそのスロットを担当するノードアドレスが含まれています。クライアントは、正しいノードへのリクエストを開始できます。
phpredis クライアントは、データを取得するためのリダイレクト情報に基づいて、キーが配置されているノードへのリクエストを直接開始できます。
predis クラスター モードを使用する<?php
use Predis\Client;
require __DIR__ . '/../vendor/autoload.php';
$redis_list = [
'tcp://10.30.5.163:7000',
'tcp://10.30.5.163:7001',
'tcp://10.30.5.162:7000'
];
$redis = new Client($redis_list, ['cluster'=>'redis']);
echo $redis->get('new_item_key:d89b561fb759fd533a8c2781ef15dd5f')
以上がPHPでRedisクラスターを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。