我们目前正在使用PhpRedis
扩展,我们的代码是使用该类编写的Redis
来自PhpRedis
。但现在我们正在迁移到redis集群。
是否可以使用Redis类连接redis集群?或者我们是否需要重新编写代码并使用 RedisArray 类?
我们还需要一致的散列。我们添加了这样的键{user}:1
这样我们就可以稍后进行一致性哈希。
主要问题是使用该类编写的所有代码Redis
并将其更改为RedisArray
.
我是redis新手,所以请提供一些建议
Thanks
这是 PHPredis Nicolas 的作者之一的电子邮件回复。我感谢他花时间回复我。
Hi,
我只想首先澄清一下,RedisArray 类不提供客户端库Redis集群 http://redis.io/topics/cluster-tutorial。它使用一致性哈希将数据分发到一组独立的Redis节点,并提供通用接口,使开发人员可以避免自己编写分发层。
Phpredis 目前不支持 Redis 集群。
解决您的问题:
- 使用RedisArray可以连接4个redis服务器。
- RedisArray提供一致性哈希,您可以选择哪一部分
密钥将用于分发。
- RedisArray 类有几个局限性 https://github.com/nicolasff/phpredis/blob/master/arrays.markdown#limitations。特别是多键
命令(例如 ZINTERSTORE)大多在一个节点上执行,但也有一些
确实提供集成分发(例如 DEL、MGET)。
要了解有关 RedisArray 类的更多信息,请参阅GitHub 上的文档 https://github.com/nicolasff/phpredis/blob/master/arrays.markdown.
他们现在增加了对 Redis 集群的支持
https://github.com/phpredis/phpredis/blob/feature/redis_cluster/cluster.markdown#readme https://github.com/phpredis/phpredis/blob/feature/redis_cluster/cluster.markdown#readme
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)