zookeeper和kafka的理解

本文介绍了Zookeeper作为一个分布式协调服务的角色,包括其集群中的Leader和Follower角色,以及选举过程。Zookeeper提供了高性能、高可靠性的服务,并增强了集群稳定性。接着解释了Kafka是一个分布式消息系统,专注于快速、可扩展且分布式的日志存储。通过实验展示了在单个集群上创建和共享消息的过程。实验总结强调了配置文件server.properties的重要性。
摘要由CSDN通过智能技术生成

zookeeper和kafka的理解

Zookeeper是什么

        ZooKeeper 翻译一下就是 “动物园管理员”,他是一些管动物的管理员,关于他的名字来源给你们找来了,可以看看。

关于“ZooKeeper”这个项目的名字,其实也有一段趣闻。在立项初期,考虑到之前内部很多项目都是使用动物的名字来命名的(例如著名的Pig项目),雅虎的工程师希望给这个项目也取一个动物的名字。时任研究院的首席科学家RaghuRamakrishnan开玩笑地说:“在这样下去,我们这儿就变成动物园了!”此话一出,大家纷纷表示就叫动物园管理员吧一一一因为各个以动物命名的分布式组件放在一起,雅虎的整个分布式系统看上去就像一个大型的动物园了,而Zookeeper正好要用来进行分布式环境的协调一一于是,Zookeeper的名字也就由此诞生了。

        如果用官方的说法就是ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务。它是一个为分布式应用提供一致性服务的软件.

ZooKeeper集群的角色

        ZooKeeper提供服务时,是需要通过集群来实现,ZooKeeper集群中有一个leader,多个follower角色,其中leader提供写服务,follower提供读服务。

角色分类如下图所示:

系统模型如图所示:

下图这个就是我们实操最后会出现的结果


     
     
  1. [root@zookeeper1 bin] # ./zkServer.sh status
  2. ZooKeeper JMX enabled by default
  3. Using config: /root/zookeeper-3.4.14/bin/../conf/zoo.cfg
  4. Mode: follower
  5. [root@zookeeper2 bin] # ./zkServer.sh status
  6. ZooKeeper JMX enabled by default
  7. Using config: /root/zookeeper-3.4.14/bin/../conf/zoo.cfg
  8. Mode: leader
  9. [root@zookeeper3 bin] # ./zkServer.sh status
  10. ZooKeeper JMX enabled by default
  11. Using config: /root/zookeeper-3.4.14/bin/../conf/zoo.cfg
  12. Mode: follower

 再简单说一下我理解的zookeeper Leader的选举

        就好比:我们每个参加的人发出一个投票投给自己,然后我们接受来自每个人的投票,统计一下,看一下是否是有效的投票,针对每一个投票,我们都需要将别人的投票和自己的投票进行PK,如果最后票数相同的话,谁先发起的投票就把leader给谁。

Zookeeper的作用

1.Zookeeper实现了高性能,高可靠性,和有序的访问。

2.加强了集群稳定性。

 3.等等。


Kafka是什么

Kafka是分布式发布-订阅消息系统。

kafka集群存储的消息是以topic为类别记录的

Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。

实验总结

        实验的目的就是在一台机子上创建文件,虽然在一台机子上创建的文件,但是其他有关联的两台机子也可以查看到消息,例如如下:


     
     
  1. [root@zookeeper1 bin] # ./kafka-topics.sh --create --zookeeper 192.168.200.11:2181 --replication-factor 1 --partitions 1 --topic test
  2. Created topic "test".
  3. [root@zookeeper2 bin] # ./kafka-topics.sh --list --zookeeper 192.168.200.12:2181
  4. Test
  5. [root@zookeeper3 bin] # ./kafka-topics.sh --list --zookeeper 192.168.200.13:2181
  6. test

我们在做的时候每一个节点进入 kafka_2.11-1.1.1/config目录下,编辑server.properties 文件。

我觉得这个是这次做kafka实验比较重要的点,要理解文件里的命令的含义。

 

参考图片:百度 ,文档

参考博客: zookeeper+kafka工作原理 - 张小爽 - 博客园 (cnblogs.com)

目录

Zookeeper是什么

ZooKeeper集群的角色

 再简单说一下我理解的zookeeper Leader的选举

Zookeeper的作用

Kafka是什么

实验总结


</article>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值