이 기사의 내용은 PHP가 Redis 클러스터를 운영하는 성공적인 사례에 관한 것입니다. 이는 특정 참고 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
Java는 jredis를 사용하여 redis 클러스터를 작동할 수 있습니다.
php Redis 클러스터를 작동하는 방법에는 두 가지가 있습니다:
1 더 높은 성능을 제공하는 C 확장인 phpredis 확장을 사용하지만 phpredis2.x 확장이 작동하지 않아 다음을 수행해야 합니다. phpredis가 3.0에 도달했지만 이 솔루션에 대한 참조 자료가 거의 없습니다
2. predis 사용, 순수 PHP 개발, 네임스페이스 사용, php5.3+ 필요, 높은 유연성
predis 사용, 다운로드 주소 https:// github .com/nrk/predis...
다운로드 후 이름을 predis로 변경하세요.
server1: 192.168.1.198
server2: 192.168.1.199
predis.php
<?php require 'predis/autoload.php';//引入predis相关包 //redis实例 $servers = array( 'tcp://192.168.1.198:7000', 'tcp://192.168.1.198:7001', 'tcp://192.168.1.198:7002', 'tcp://192.168.1.199:7003', 'tcp://192.168.1.199:7004', 'tcp://192.168.1.199:7005', ); $client = new Predis\Client($servers, array('cluster' => '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은 3개의 키로 할당되어 있습니다. 알고리즘에 따라 3개의 슬롯에 할당될 수 있으며 3개의 서버에 할당될 수 있습니다.
먼저 predis.php를 실행하여 결과를 확인합니다:
그런 다음 클러스터 확인을 위해 redis 클라이언트에 로그인합니다:
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>
데이터가 다양한 서버에 분산되어 있는 것을 볼 수 있으며 ps -ef | grep redis에 따라 여러 redis 인스턴스를 종료하고 그 효과를 확인할 수 있습니다
위 내용은 PHP에서 Redis 클러스터를 성공적으로 운영한 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!