应用程序通过Zookeeper客户端获取Zookeeper服务端存储的服务的地址,每次都会去连接一下Zookeeper服务端,获取一下吗?Zookeeper客户端有没有缓存一部分服务的信息,等Zookeeper中心有修改才重新连接获取呢?

解决方案 »

  1.   

    应该是没有缓存,Zookeeper设计就是为了服务器可靠性比较低的情况下实时获得服务器信息的
      

  2.   

    动物园里当然有好多的动物,游客可以根据动物园提供的向导图到不同的场馆观赏各种类型的动物,而不是像走在原始丛林里,心惊胆颤的被动 物所观赏。为了让各种不同的动物呆在它们应该呆的地方,而不是相互串门,或是相互厮杀,就需要动物园管理员按照动物的各种习性加以分类和管理,这样我们才能更加放心安全的观赏动物。
    回到企业级应用系统中,随着信息化水平的不断提高,企业级系统变得越来越庞大臃肿,性能急剧下降,客户抱怨频频。拆分系统是目前我们可选择的解决系统可伸缩性和性能问题的唯一行之有效的方法。但是拆分系统同时也带来了系统的复杂性——各子系统不是孤立存在的,它们彼此之间需要协作和交互,这就是我们常说的分布式系统0。各个子系统就好比动物园里的动物,为了使各个子系统能正常为用户提供统一的服务,必须需要一种机制来进行协调——这就是ZooKeeper(动物园管理员)。
      

  3.   

    服务启动往Zookeeper注册地址,消费者订阅Zookeeper的地址信息然后缓存在本地,Zookeeper如果有加入新的地址,就推送给消费者
      

  4.   

    是zookeeper SDK 缓存的吗?
      

  5.   

    请问你用的哪个SDK,开源的吗?能否告诉我哪部分缓存的?