Dubbo分布式框架:(二)Zookeeper实战

96
HaleyLiu
2018.05.04 09:20* 字数 496

一.Zookeeper简介

讲到Dubbo不得不说它的核心组件Zookeeper,ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。提供Java和C的接口。

二.Zookeeper文件详解

zookeeper官网下载地址:http://zookeeper.apache.org/releases.html
如果官网下载不了可在我的百度云盘下载:https://pan.baidu.com/s/1PIKyo_3F7UDzQt5bFzY6NQ

zookeeper文件详解.png

  • bin文件夹:主要是zk的客户端以及服务端启动批处理,.cmd为windows启动项,
    .sh为linux启动项,在启动项目前必须启动zkServer.sh服务器端,否则项目工程会报
    链接不到zk的异常,connect refused。


    zk的bin文件夹.png
  • conf文件夹:用于存放log4j和zk的配置文件
  • dist-maven文件夹:用于存放zk的项目jar以及pom文件,源码doc以及测试用例的jar和pom文件,想在maven工程里引用可以本地打入maven生成pom
  • docs文件夹:zk的源码包
  • lib文件夹:zk使用到的jar包库
  • src 文件 :提供给java和C的接口

三.Zookeeper工作原理

zookeeper中有leader,follower,observer三种角色,其中leader和follower会参与选举,但是observer不参与选举过程。集群会根据选举结果,如果leader服务器无法正常工作,集群会选举出新的leader.如果集群中少于1/3服务器,则无法正常工作。

zookeeper.PNG

四.如何使用Zookeeper

请参见我的csdn博客: https://blog.csdn.net/haleyliu123/article/details/80033704
源码请见我的github链接:https://github.com/Feiyu123/DubboDemo.git

Web框架开发
Web note ad 1