Redis 3.0 Proxy集群不支持redisson分布式锁的原因
redisson分布式锁的加锁和解锁流程如下:
- redisson分布式锁的加锁和解锁都是执行一段lua脚本功能实现的。
- 在加锁阶段,需要在lua脚本中执行exists、hset、pexpire、hexists、hincrby、pexpire、pttl命令。
- 在解锁阶段,需要在lua脚本中执行exists、publish、hexists、pexpire、del命令。
由于Proxy集群支持publish/subscribe(redis的发布订阅)时,是需要在Proxy节点上识别publish/subscribe命令,做一些特殊处理(转发给所有redis-server的节点),因此不支持直接在lua脚本中执行publish命令。
因此,Redis 3.0 Proxy集群无法支持redisson的分布式锁机制,如果需要使用redisson分布式锁功能,建议使用Redis 4.0或Redis 5.0集群。
Redis使用 所有常见问题
- 什么是预留内存,如何配置预留内存?
- Redis实例CPU使用率达到100%的原因
- Redis实例能否修改VPC和子网?
- Redis 4.0/5.0/6.0实例为什么不支持安全组?
- Redis实例支持的单个Key和Value数据大小是否有限制?
- Redis集群可以读取每个节点的IP地址吗?
- 创建的缓存实例为什么可使用内存比实例规格少一些?
- Redis实例是否支持读写分离?
- Redis实例是否支持多DB方式?
- Redis集群实例是否支持原生集群?
- 什么是哨兵?
- Redis实例是否支持哨兵模式?
- Redis默认的数据逐出策略是什么?
- 使用redis_exporter出错怎么办?
- Redis的安全加固方面有哪些建议?
- Redis 3.0 Proxy集群不支持redisson分布式锁的原因
- 实例是否支持自定义或修改端口?
- 实例是否支持修改访问地址?
- 按需实例转包周期失败是什么原因?
- 按需实例转包周期需要停服么?
- 实例无法删除是什么原因?
- DCS实例是否支持跨可用区部署?
- 集群实例启动时间过长是什么原因?
- 客户使用Redis版本和DCS Redis版本不同是否存在兼容问题?
- DCS Redis有没有后台管理软件?
- Redis实例经常内存满了但是key不多的原因
- DCS缓存实例的数据被删除之后,能否找回?
- Redis实例是否支持SSL连接?
- 如何修改Redis 3.0实例的SSL开关?
- 为什么实例实际可用内存比申请规格小而且已使用内存不为0?
- 如何估算Redis内存占用量
- Cluster集群实例容量和性能未达到瓶颈,但某个分片容量或性能已过载是什么原因?
- DCS是否支持外部扩展模块、插件或者Module?
- Redis key丢失是什么原因
- 访问Redis报OOM错误提示
- 不同编程语言如何使用Cluster集群客户端
- 使用Cluster的Redis集群时建议配置合理的超时时间
- 读取redis数据报超时错误
- Proxy集群使用多DB限制
- 实例是否支持变更可用区
- hashtag的原理、规则及用法示例
- 重启实例后缓存数据会保留吗?
- 如何购买多DB的Proxy集群实例?
more
