Answers:
DOSGi 的Apache CXF实现使用zookeeper为其服务注册存储库。各个容器具有一个分布式软件(dsw)捆绑包,该捆绑包侦听所有服务事件以及服务状态更改时的状态,该属性具有指示分发的属性。dsw与发现包进行通信,在参考实现情况下,该发现包使用zookeeper将服务存储为临时节点。其他实例将寻找对节点结构的更改并在其本地系统上注册代理。最终结果是您可以编码为普通的OSGi,并以透明的发行形式结束。
由ZooKeeper支持的免费软件项目:
由ZooKeeper支持的Apache项目:
资料来源: https : //cwiki.apache.org/confluence/display/ZOOKEEPER/PoweredBy
在当前版本之前,HBase使用Zookeeper协调其“头节点”负责的活动。使用Zookeeper的转变意味着中央控制不再是单点故障。
Zookeeper非常灵活。这是使用它来构建分布式并发队列的示例:
http://blog.cloudera.com/blog/2009/05/building-a-distributed-concurrent-queue-with-apache-zookeeper/
当然,您也可以使用它在分布式系统中创建资源锁等。
Norbert是可伸缩生产系统中的一个很好的例子。通常,它将Netty,Protocol Buffers和Zookeeper集成到用于运行集群服务的轻量级框架中。协议缓冲区用于指定您的服务API,Netty实现传输层抽象,而Zookeeper本质上是一种容错发现服务。
每次启动服务实例时,诺伯特都会将其注册为特定服务类型的可用实例。从实现的角度来看,它创建了两个Zookeeper树:
每个节点最重要的属性是用于连接到相应服务实例的URL。它可以实现客户端负载平衡-Norbert客户端找到给定服务名称的URL列表,并尝试以某种顺序(例如循环或随机)连接到其中一个。
有一篇很好的文章ZooKeeper- Elastic Cloud上有关ZooKeeper 的协调之王。
例如,在Found公司,我们将ZooKeeper广泛用于发现,资源分配,领导者选举和高优先级通知。在本文中,我们将向您介绍“协调之王”,并仔细研究如何在Found公司使用ZooKeeper。
Solr也在努力整合ZooKeeper。在这里,您可以看到它们正在用于动态配置,分片,消除SPOF(主/从选举),重新平衡等。
就我而言,我们将配置文件存储在zookeeper集合中以供集群使用。我们使用的是Leader-> Follower模式。因此,当一名动物园管理员倒下时,我们将换另一只(复制模式)
Neo4j使用Zookeeper的高可用性企业服务器! http://docs.neo4j.org/chunked/milestone/ha.html
这是有关HBase如何使用ZooKeeper的一些详细信息,包括有关他们将来打算如何使用它的信息。通常,他们使用它通过ZooKeeper实施的Leader Leader消除区域服务器上的SPOF。