分布式协调技术
分布式协调技术,主要用来解决分布式环境中多个进程之间的同步控制,让他们有序的去访问某种临界资源,防止造成『脏数据』的后果。
分布式
- 分布式:一个业务分拆多个子业务,部署在不同的服务器上。
- 集群:同一个业务,部署在多个服务器上。
zookeeper概述
zookeeper是一种为分布式应用所设计的高可用、高性能且一致的开源协调服务,它提供了一项基本服务:分布式锁服务。
zookeeper性能上的特点,决定了它能够用在大型的、分布式的系统之中。
从可靠性方面来讲,它并不会因为一个节点的错误而崩溃。
zookeeper的架构
1. client 客户端
客户端,分布式应用程序集群中的一个节点,从服务器访问信息。
对于特定的时间间隔,每个客户端向服务器发送消息以使服务器知道客户端是活着的。
当客户端连接时,服务器发送确认。如果连接的服务器没有响应,客户端会自动将消息重定向到另一个服务器。
2. Server 服务器
服务器,zookeeper集合中的一个节点,为客户端提供所有的服务。
向客户端发送确认,通知服务器处于活动状态。
3. Ensemble 服务器组
zookeeper服务器组。形成整体所需的最小节点数为3
4. Leader 服务器节点
服务器节点,如果任何连接的节点发生故障,则执行自动回复。
领导者在服务启动时被选举。
5. Follower
服务器节点跟随引导指令。
分层命名空间
zookeeper节点成为znode
每个znode由一个名称标识,并用路径(/)序列分隔。
网友评论