zoukankan      html  css  js  c++  java
  • 《Zookeeper中间件》Zookeeper的应用场景

    前言

    Zookeeper到底能为我们的程序解决一些什么问题呢?

    应用场景

    1. 分布式配置中心

     

    1.1通过Zookeeper的watch监听来实现各个集群节点的配置修改,不用再一台台服务器单独进行修改。

    1.2使用zookeeper的持久化节点来实现配置保存。

    2. 分布式锁

    2.1.APP1 获取锁的时候,创建节点node0000001,APP2 并发获取锁的时候,创建节点node0000002,APP3 并发获取锁的时候,创建节点node0000003.

    2.2.然后APP1判断自己获取到的节点是不是最小的,如果是则获取锁成功,APP2,APP3判断自己的节点都不是最小的所以等待。

    2.3.APP2获取了node0000002所以APP2需要监听比自己小的node0000001什么时候消失,消失APP2就获取锁。 APP获取锁的逻辑和APP2一致。

    2.4.实现zookeeper锁的开源框架有Curator。

    3. 注册中心

    3.1. 各个APP服务都将自己的ip和端口注册到Zookeeper的节点上面,这个节点是临时的,服务消息节点也会消失,各个服务都需要GSV来表示自己。

    3.2. APP服务之间的互相调用,通过Zookeeper去找到对方的服务的地址,然后通过GSV和方法名具体找到实际方法。

    3.3. zookeeper只是提供了节点的特性,实现以上功能的框架有dubbo。

    总结

    以上是zookeeper最常用的几种方式,zookeeper还可以有很多其他的用处,利用他的watch机制和节点特性。

  • 相关阅读:
    css实现梯形
    CSS3自定义滚动条样式 -webkit-scrollbar
    MySQL-5.6.13免安装版配置方法
    CSS边框长度控制
    The Shapes of CSS(css的形状)
    CSS制作图形速查表
    使用onclick跳转到其他页面/跳转到指定url
    TCP/IP协议
    jQuery实现全选、反选和不选功能
    checkbox在vue中的用法小结
  • 原文地址:https://www.cnblogs.com/jssj/p/14018998.html
Copyright © 2011-2022 走看看