• zookeeper-理解


    面试题:

    1、什么是zookeeper?

    2、zookeeper的选举机制?

    3、zookeeper的特性是什么?

    4、zookeeper所使用到的设计模式?

    1、zookeeper就是分布式应用程序的协调和控制服务;

    2、在另一篇中说到过;

    3、CP性(一致性):数据一致性,在集群中的每一个节点上的数据要保持一致

    4、观察者模式(zookeeper是被观察对象,在zookeeper中注册的服务是观察对象)


     参考链接:https://blog.csdn.net/qq_34337272/article/details/82622794

    zookeeper:注册中心就是zookeeper的别名,zookeeper是Apache开源基金会下的一个顶级项目,

      zookeeper是一个致力于开发和维护的开源服务器,作用于项目中的协调和控制功能。

    zookeeper的应用场景:

      在之前只适用于大数据,但是随着web项目越来越大,发展越来越快,zookeeper已经完全适用于整个web项目,在web项目中仍然起着协调和控制的作用。

    zookeeper只是以集群的形式存在,也就是说三台zookeeper做同一件事,在官方文档上说明,zookeeper以奇数台为稳定,并且以中间这一台为leader,也就是

    zookeeper至少需要三台。

    面试题

    什么是zookeeper?

      分布式协调和控制的注册中心

     为什么要使用zookeeper?

      为了解决分布式系统的数据一致性问题

    zookeeper的观察者?

      为了在不影响zookeeper写性能的条件下提升zookeeper的性能;

      当消费者的请求越来越多的时候,我们需要对zookeeper集群进行拓展,

      而观察者不会参与投票,所以我们可以任意进行添加,且观察者宕机(死亡)

      不会带来任何影响。

      不影响写性能:因为观察者不会参与投票

      提升性能:观察者也能接受到消费者的请求,并发送给leader处理

      

    配置zookeeper:
    4.1.配置jdk
    4.2.配置免秘钥登录
    生成自己的公钥
    ssh-keygen -t rsa 四次回车(都不能输入密码)
    把自己的公钥copy其他服务器上
    ssh-copy-id ip地址/hostname
    4.3.解压zookeeper
    tar -zxvf xxxxx
    4.4.把conf目录下的zoo-sample.cfg文件改名为zoo.cfg
    mv zoo-sample.cfg zoo.cfg
    4.5.修改dataDir参数(不是必须所要修改的,但是要求修改)
    指向的文件就是zookeeper每一台节点的唯一标识(id),而且这个唯一标识不能重复!!!!
    在zookeeper目录中创建文件夹data
    把dataDir修改为刚才所创建的data目录的绝对路径
    dataDir=/home/apps/zookeeper-3.4.6/data
    4.6.在zoo.cfg文件的末尾添加
    server.1=zookeeper01:2888:3888
    server.2=zookeeper02:2888:3888
    server.3=zookeeper03:2888:3888
    server.的数据就是每一台zookeeper的唯一标识
    zookeeper01:HOSTNAME或者可以配置IP地址
    2888:zookeeper集群之间通讯所用的端口号
    3888:zookeeper集群的选举leader端口号
    4.7.在之前创建data文件夹下创建myid文件
    touch myid
    4.8.写入myid文件
    1
    4.9.通过scp发送到另外两台服务器上
    scp -r /home/apps/ zookeeper02:/home/
    scp -r /home/apps/ zookeeper03:/home/
    4.10.根据server.的数字分别修改myid文件
    把zookeeper02修改为2
    把zookeeper03修改为3
    4.11.启动zookeeper
    在bin目录中启动
    ./zkServer.sh start
    看到以下信息说明启动成功:
    JMX enabled by default
    Using config: /home/apps/zookeeper-3.4.6/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    4.12.分别检测三台zookeeper服务器的状态
    在bin目录中
    ./zkServer.sh status

    zookeeper的机制:

    zookeeper:

    乾坤未定,你我皆是黑马
  • 相关阅读:
    python中类中的@property
    Python列表的三种遍历(序号和值)的方法
    Numpy一文全了解
    python中list操作方法
    Material Design
    android动画xml
    java配置opencv-在eclipse中
    android 重装sdk或者系统的时模拟器出现can open ****
    hdu acm 1005
    hdu acm 1007
  • 原文地址:https://www.cnblogs.com/liuqijia/p/11463308.html
Copyright © 2020-2023  润新知