public function testGetMasterSuccess() { $sentinel1 = $this->createSentinelClientMock('127.0.0.2', 2121, null, false, '127.0.0.11', 6371); $sentinel2 = $this->createSentinelClientMock('127.0.0.3', 2222, null, true, '127.0.0.10', 6370); $sentinelSet = new SentinelSet('test-set', new PhpRedisClientAdapter()); $sentinelSet->setClientFactory($this->createClientFactoryMock('127.0.0.10', 6370, true, true)); $sentinelSet->addSentinel($sentinel1); $sentinelSet->addSentinel($sentinel2); $masterNode = $sentinelSet->getMaster(); $this->assertTrue($masterNode instanceof Client); $this->assertEquals('127.0.0.10', $masterNode->getHost(), 'Incorrect master host'); $this->assertEquals(6370, $masterNode->getPort(), 'Incorrect master port'); }
use Redis\Client\Adapter\Predis\ClientCreator as RedisCreator; use Redis\ClientSentinel; use Redis\SentinelSet; use Redis\Client\Adapter\PredisClientAdapter as ClientAdapter; use Redis\Client\Adapter\PhpRedisClientAdapter; echo 0; //$redisLibraryAdapter = new PredisClientAdapter(new SentinelCreator()); //$redisLibraryAdapter = new PredisClientAdapter(); //$redisLibraryAdapter = new NullClientAdapter(); $redisLibraryAdapter = new SocketClientAdapter(); echo 1; $sentinel1 = new ClientSentinel('127.0.0.1', 26379, $redisLibraryAdapter); $sentinel2 = new ClientSentinel('127.0.0.1', 26380, $redisLibraryAdapter); $sentinel3 = new ClientSentinel('127.0.0.1', 26381, $redisLibraryAdapter); echo 2; $monitor = new SentinelSet('test-master', new PhpRedisClientAdapter()); echo 3; $monitor->addSentinel($sentinel1); $monitor->addSentinel($sentinel2); $monitor->addSentinel($sentinel3); echo 4; try { $redis = $monitor->getMaster(); echo 5; $redis->connect(); // print_r($redis); // exit; $client = $redis->getClientAdapter()->getClient(); $client->set('keyname', '-b-'); echo ' ' . $client->get('keyname'); } catch (\Exception $e) {