ZooKeeper和Reids做分布式锁的区别?

Reids:

  1. Redis只保证最终一致性,副本间的数据复制是异步进行(Set是写,Get是读,Reids集群一般是读写分离架
    构,存在主从同步延迟情况),主从切换之后可能有部分数据没有复制过去可能会 **「丢失锁」**情况,故强一
    if redis.call("get", KEYS1)==ARGV1 then
    return redis.call("del", KEYS1)
    else
    return 0
    end
    致性要求的业务不推荐使用Reids,推荐使用zk。
  2. Redis集群各方法的响应时间均为最低。随着并发量和业务数量的提升其响应时间会有明显上升(公网集群影
    响因素偏大),但是极限qps可以达到最大且基本无异常
    ZooKeeper:
  3. 使用ZooKeeper集群,锁原理是使用ZooKeeper的临时顺序节点,临时顺序节点的生命周期在Client与集群的
    Session结束时结束。因此如果某个Client节点存在网络问题,与ZooKeeper集群断开连接,Session超时同样
    会导致锁被错误的释放(导致被其他线程错误地持有),因此ZooKeeper也无法保证完全一致。
  4. ZK具有较好的稳定性;响应时间抖动很小,没有出现异常。但是随着并发量和业务数量的提升其响应时间和
    qps会明显下降。
    总结:
  5. Zookeeper每次进行锁操作前都要创建若干节点,完成后要释放节点,会浪费很多时间;
  6. 而Redis只是简单的数据操作,没有这个问题。
相关推荐
阿里云云原生31 分钟前
智能体构建与进化——Agent 开源开发者沙龙·广州站精彩回顾 & PPT 下载
云原生·agent
阿里云云原生1 小时前
阿里云联合 Datadog,补齐 Go 可观测性最后短板
云原生·go
李白客1 小时前
分布式集群与数据库产业:从单机到集群的架构跃迁与市场重构
数据库·分布式·架构
传感器与混合集成电路1 小时前
储气库漏失检测技术解析:分布式光纤如何锁定环空窜漏的精确位置
分布式·数据分析·信号处理
qq_452396232 小时前
第十二篇:《Istio 生产环境最佳实践与排错指南》
云原生·php·istio
cfm_29144 小时前
了解Sentinel
分布式·架构·sentinel
上海云盾-小余4 小时前
全域网络安全防护思路:借助分布式节点抵御异常访问实战
分布式·安全·web安全
Henry-SAP5 小时前
SAP MRP类型如何影响计划订单生成
人工智能·云原生·sap·erp
中议视控8 小时前
展厅可视化网络中央控制系统:支持双向反馈,可视化播控,回显,状态显示,反向控制电脑,声光电网络视讯设备统一管理
网络·分布式·信息可视化
云烟成雨TD8 小时前
Micrometer 系列【52】统一观测:Observation | 观测载体
云原生·链路追踪·micrometer