Heim  >  Artikel  >  Backend-Entwicklung  >  Ein Beispiel für den erfolgreichen Betrieb eines Redis-Clusters in PHP

Ein Beispiel für den erfolgreichen Betrieb eines Redis-Clusters in PHP

不言
不言nach vorne
2019-01-09 10:21:062757Durchsuche

Der Inhalt dieses Artikels handelt vom erfolgreichen PHP-Betrieb eines Redis-Clusters. Freunde in Not können sich darauf beziehen.

Java kann jredis verwenden, um Redis-Cluster-Cluster zu betreiben

Es gibt zwei Möglichkeiten für PHP, Redis-Cluster-Cluster zu betreiben:

1 Verwenden Sie die PHPRedis-Erweiterung eine c-Erweiterung, höhere Leistung, aber phpredis2, hohe Flexibilität

Ich verwende Predis, Download-Adresse https://github.com/nrk/predis...

Nach dem Herunterladen benennen Sie es um predis,

server1: 192.168.1.198

server2: 192.168.1.199


predis.php

<?php require &#39;predis/autoload.php&#39;;//引入predis相关包
//redis实例
$servers = array(
    &#39;tcp://192.168.1.198:7000&#39;,
    &#39;tcp://192.168.1.198:7001&#39;,
    &#39;tcp://192.168.1.198:7002&#39;,
    &#39;tcp://192.168.1.199:7003&#39;,
    &#39;tcp://192.168.1.199:7004&#39;,
    &#39;tcp://192.168.1.199:7005&#39;,
);
 
$client = new Predis\Client($servers, array(&#39;cluster&#39; => 'redis'));
 
$client->set("name1", "11");
$client->set("name2", "22");
$client->set("name3", "33");
 
$name1 = $client->get('name1');
$name2 = $client->get('name2');
$name3 = $client->get('name3');
var_dump($name1, $name2, $name3);die;

name1, name2, name3 sind 3 Schlüssel, die zugeordnet sind 3 Slots gemäß dem Algorithmus. Es kann in 3 Server unterteilt werden.

Führen Sie zuerst predis.php aus, um die Ergebnisse zu überprüfen:


Ein Beispiel für den erfolgreichen Betrieb eines Redis-Clusters in PHP Dann protokollieren in den Redis-Client zur Cluster-Überprüfung ein:

server1

[root@localhost src]# redis-cli -c -p 7000
127.0.0.1:7000> get name1
-> Redirected to slot [12933] located at 192.168.1.199:7004
"11"
192.168.1.199:7004> get name2
-> Redirected to slot [742] located at 192.168.1.199:7003
"22"
192.168.1.199:7003> get name3
"33"
192.168.1.199:7003>

server2

[root@localhost src]# redis-cli -c -p 7003
127.0.0.1:7003> get name1
-> Redirected to slot [12933] located at 192.168.1.199:7004
"11"
192.168.1.199:7004> get name2
-> Redirected to slot [742] located at 192.168.1.199:7003
"22"
192.168.1.199:7003> get name3
"33"
192.168.1.199:7003>

Sie können sehen, dass die Daten auf verschiedene Server verteilt sind. Sie können mehrere der Redis töten Instanzen gemäß ps -ef |. grep redis, und dann Sehen Sie sich den Effekt an

Das obige ist der detaillierte Inhalt vonEin Beispiel für den erfolgreichen Betrieb eines Redis-Clusters in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen