操作方法

方法列表

方法名称参数说明备注
clusterNodes获取集群节点
clusterAddSlots$slots集群槽位变更,$slots可以为字符串,可以为数组
clusterCountFailureReports$nodeId集群计数失败报告
clusterCountKeySinSlot$slot返回指定的 Redis Cluster 哈希槽中的键的数量。
clusterDelSlots$slot删除一个哈希槽
clusterFailOver$option = null手动故障转移
clusterForget$nodeId删除指定的节点。
clusterGetKeySinSlot$slot, $count返回存储节点中的密钥名称数组,并哈希到指定的哈希槽。
clusterInfo集群信息
clusterKeySlot$key返回key的集群槽
clusterMeet$ip, $port节点连接到工作群集。
clusterReplicate$nodeId集群复制
clusterReset$option = null集群重置
clusterSaveConfig强制节点将nodes.conf配置保存到磁盘上。
clusterSetConfigEpoch$configEpoch在新节点中设置特定的配置时期
clusterSetSlot$slot, $subCommand, $nodeId = null更改接收节点中散列槽的状态
clusterSlaves$nodeId获取从指定主节点复制的从节点列表。
clusterSlots返回有关哪些集群插槽映射到哪些 Redis 实例的详细信息。。
readonly启用读取查询以连接到 Redis 群集从属节点。
readwrite禁用与 Redis 集群从属节点的连接的读取查询。

基本使用

  1. go(function () {
  2. $redis = new \EasySwoole\Redis\RedisCluster(new \EasySwoole\Redis\Config\RedisClusterConfig([
  3. ['172.16.253.156', 9001],
  4. ['172.16.253.156', 9002],
  5. ['172.16.253.156', 9003],
  6. ['172.16.253.156', 9004],
  7. ], [
  8. 'auth' => '',
  9. 'serialize' => \EasySwoole\Redis\Config\RedisConfig::SERIALIZE_PHP
  10. ]));
  11. $data = $redis->clusterNodes();
  12. var_dump($data);
  13. $data = $redis->clusterKeySlot('key1');
  14. var_dump($data);
  15. $data = $redis->clusterCountFailureReports(current($redis->getNodeList())['name']);
  16. var_dump($data);
  17. $data = $redis->clusterCountKeySinSlot(1);
  18. var_dump($data);
  19. $data = $redis->clusterFailOver('FORCE');
  20. var_dump($data);
  21. $redis->tryConnectServerList();
  22. $data = $redis->clusterForget(array_column(($redis->getNodeList()), 'name')[0]);
  23. var_dump($data);
  24. $redis->set('a', 1);
  25. $data = $redis->clusterKeySlot('a');
  26. var_dump($data);
  27. $data = $redis->clusterGetKeySinSlot($data, 1);
  28. var_dump($data);
  29. $data = $redis->clusterInfo();
  30. var_dump($data);
  31. $data = $redis->clusterKeySlot('b');
  32. var_dump($data);
  33. $data = $redis->clusterMeet('172.16.253.156', '9005');
  34. var_dump($data);
  35. });

由于集群方法运行较为复杂,需要操作不同的客户端实现某种方法的实例,所以本示例只提供了部分代码,没有全部,可自行调用测试