Curator--0概述

1 Curator主要解决了三类问题:

1 封装ZooKeeper client与ZooKeeper server之间的连接处理;
2提供了一套Fluent风格的操作API;
3 提供ZooKeeper各种应用场景(recipe, 比如共享锁服务, 集群领导选举机制)的抽象封装.

2 Curator文件夹(组件):

Curator--0概述

2.1 Recipes

Implementations of some of the common ZooKeeper"recipes". The implementations are built on top of the CuratorFramework.

构建在Curator Framework框架之上,实现了原生ZooKeeper中的分布式工具特征recipes。分布式锁,分布式队列,leader选举等。

2.2 Framework

The Curator Framework is a high-level API thatgreatly simplifies using ZooKeeper. It adds many features that build onZooKeeper and handles the complexity
of managing connections to the ZooKeepercluster and retrying operations.

提供高层抽象API简化ZooKeeper的使用,更重要的是封装了管理到ZooKeeper集群的连接以及重试机制的复杂性,是Curator对外提供的接口。

Various utilities that are useful when usingZooKeeper.

一些使用ZooKeeper过程中有用的工具。

2.3 Client

A replacement for the bundled ZooKeeper class that takes care ofsome low-level housekeeping and provides some useful utilities.

替换原生ZooKeeper类,封装操作原生ZooKeeper的底层细节,主要包括前面说的实现了复杂的到ZooKeeper集群的连接以及重试机制。

2.4 x-async

Curator Async是包装现有CuratorFramework实例的DSL。该DSL完全是异步的,并使用Java 8的CompletionStage机制进行链接,合成等。此外,Curator的原始DSL已被清理和简化,尤其是对于诸如create()之类的操作。

使用此DSL,您可以使用Java 8 lambdas以更自然,更实用的方式执行异步任务。

Curator异步包还包含一个强类型的DSL和强类型的“高速缓存食谱”包装器,它们使您可以将ZooKeeper路径映射到可序列化的类,而不是原始字节数组。
http://curator.apache.org/curator-x-async/index.html

2.5 x-discovery

在SOA /分布式系统中,服务需要相互发现。例如,一个Web服务可能需要找到一个缓存服务,等等。DNS可以用于此目的,但是对于不断变化的服务而言,它还远远不够灵活。服务发现系统提供了以下机制:

服务以记录其可用性
查找特定服务的单个实例
通知服务实例何时更改
http://curator.apache.org/curator-x-discovery/index.html

2.6 x-discovery-service

服务发现服务器将非Java或旧式应用程序与Curator Service Discovery桥接。它公开了RESTful Web服务以注册,删除,查询等服务。

服务发现服务器提供了JAX-RS组件,可以将其合并到您选择的容器(Tomcat,Jetty等)中。您还可以选择任何JAX-RS提供程序(Jersey,RESTEasy等)
http://curator.apache.org/curator-x-discovery-server/index.html

上一篇:Office 365开发环境概览


下一篇:深度学习课程笔记(十)Q-learning (Continuous Action)