您的位置:首页 > 其它

Zookeeper学习(一):Zookeeper的概述

2016-02-23 21:10 330 查看
一.Zookeeper介绍

Zookeeper是一个高性能,分布式的,开源分布式应用协调服务。它提供了简单原始的功能,分布式应用可以基于它实现更高级的服(如Dubbo基于Zookeeper),比如,配置管理,集群管理,名空间。它被设计为易于编程,使用文件系统目录树作为数据模型。服在端跑在java上,提供java和C的客户端API。

两个重要的问题:

什么是分布式? 什么是协调服务?

二.分布系统

分布式系统对外来说就是一个整体,外部并不知道内部的组成



三.分布式系统的问题






四.协调者








[b]五.分布式系统协调

[/b]

● 协调: 多个节点一起完成的一个动作

● 举例:

o 集群成员管理:集群中有多少个节点,节点中有多少台机器,(分布式系统中需要自动的发现成员)

o 锁:多台服务器间的分布式锁,分布式系统中必须要用锁来保证数据一致性

o 选主

o 同步:数据一致性,数据发生变化后要同步到各个机器,数据的版本要一致

o 发布/订阅

六.数据模型



[b]七.典型应用场景

[/b]



1.数据订阅/发布

[b]


[/b]

[b]2.负载均衡

[/b]

[b]


[/b]



3.命名服务








4.分布式协调/通知








5.集群管理



例如:Solr,Dubbo,Kafka
集群需要Zookeeper来进行管理

注:集群中的机器数量是随时发生变化的,可以随时加入机器,也可能宕机了减少机器



6.Master选举



7.分布式锁
















内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: