dwaysinc / redis-cluster
0.0.2
2022-04-15 19:27 UTC
Requires
- php: >=8.1
- amphp/amp: ^2.6.2
- amphp/log: 1.1.0
- amphp/redis: ^1.0.7
This package is auto-updated.
Last update: 2025-02-21 04:07:45 UTC
README
Redis scales horizontally with a deployment topology called Redis Cluster. You can read more about Redis Cluster here.
dwaysinc/redis-cluster
based on amphp/amp and amphp/redis and provides non-blocking access to Redis Cluster.
Installation
This package can be installed as a Composer dependency.
composer require dwaysinc/redis-cluster
Usage
<?php use Amp\Log\ConsoleFormatter; use Amp\Log\StreamHandler; use Amp\Redis\Config; use Amp\Redis\Redis; use Amp\Redis\RemoteExecutor; use Monolog\Logger; use function Amp\ByteStream\getStdout; Amp\Loop::run(static function () { $handler = new StreamHandler(getStdout()); $handler->setFormatter(new ConsoleFormatter); $logger = new Logger('example'); $logger->pushHandler($handler); $redisCluster = new DwaysInc\RedisCluster\RedisCluster(...[ new Redis(new RemoteExecutor(Config::fromUri('tcp://redis-node-0:6379?password=bitnami',))), new Redis(new RemoteExecutor(Config::fromUri('tcp://redis-node-1:6379?password=bitnami',))), new Redis(new RemoteExecutor(Config::fromUri('tcp://redis-node-2:6379?password=bitnami',))), new Redis(new RemoteExecutor(Config::fromUri('tcp://redis-node-3:6379?password=bitnami',))), new Redis(new RemoteExecutor(Config::fromUri('tcp://redis-node-4:6379?password=bitnami',))), new Redis(new RemoteExecutor(Config::fromUri('tcp://redis-node-5:6379?password=bitnami',))), ]); $redisCluster->setLogger($logger); $key = 12345678; yield $redisCluster->set($key, 12); $value = yield $redisCluster->get($key); // (int) 12 $logger->info(sprintf('Got value by key %s - %s', $key, $value)); });
Contact
For contacting me use email dmitrii@dways.org
.