千家信息网

Kafka的体系架构是怎样的

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这期内容当中小编将会给大家带来有关Kafka的体系架构是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、什么是Kafka?数据工程中最具挑战性的部分之一是如
千家信息网最后更新 2026年11月02日Kafka的体系架构是怎样的

这期内容当中小编将会给大家带来有关Kafka的体系架构是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

一、什么是Kafka?

数据工程中最具挑战性的部分之一是如何从不同点收集和传输大量数据到分布式系统进行处理和分析。需要通过消息队列正确地分离大量数据,因为如果一部分数据无法传送,则可以在系统恢复时传输和分析其他数据。有两种消息排队,对于上述目的,它们都是可靠的和异步的。点对点(Point to point)和发布者--订阅者(publisher-subscriber)。下图展示了一个典型的消息系统,其中:消息的生产者负责产生消息;消息的消费者负责处理消息。

Kafka是一个分布式发布--订阅消息传递系统。Kafka快速、可扩展且耐用。它保留主题中的消息源。生产者将数据写入主题,消费者从主题中读取数据。
Zookeeper需要覆盖Kafka生态系统,因此有必要下载它,更改其属性并最终设置环境。在运行Zookeeper之后,应该下载Kafka,然后开发人员可以借助一些指令创建代理,集群和主题。

二、消息队列的分类

  • 点对点(Queue)

在点对点或一对一中,有一个发件人和正在监听发件人的多个消费者。当一个消费者从队列收到消息时,该特定消息将从队列中消失,而其他消费者无法获得该消息。

  • 发布和订阅系统(Topic)

在发布者--订阅者中,发布者向同时收听发布者的多个消费者或订阅者发送消息,并且每个订阅者可以获得相同的消息。数据应通过数据管道传输,数据管道负责整合来自数据源的数据。

三、Kafka的体系架构

  • 主题和发布者

有一个发布者发送消息。消息根据主题进行分类,每个主题都有一个或多个分区,并有自己的偏移地址。例如,如果我们为一个主题分配复制因子= 2,那么Kafka将为每个分区创建两个相同的副本并在群集中找到它。

  • 集群和Brokers

Kafka集群包括代理--服务器或节点,每个代理可以位于不同的机器中,并允许订户选择消息。因此,复制就像备份分区一样,这意味着Kafka是持久的,这有助于容错。

  • Zookeeper

Kafka集群不保留其自身生态系统的元数据,因为它是无状态的。因此,Kafka依赖于Zookeeper来跟踪元数据。Zookeeper应该首先启动。实际上,Zookeeper是brokers和consumers之间的接口,它的存在是容错的必要条件。Kafka代理负责负载平衡,假设该主题有一个主题和多个分区,每个分区都有一个领导者,定期确认其与Zookeeper的偏移量。因此,如果一个节点或代理失败,Kafka可以从Zookeeper请求的最后一个偏移地址继续操作,因此Zookeeper在崩溃情况下在Kafka恢复中起着至关重要的作用。

四、Kafka单机单Broker的部署

  • 部署ZooKeeper

配置/root/training/zookeeper-3.4.6/conf/zoo.cfg文件dataDir=/root/training/zookeeper-3.4.6/tmpserver.1=hadoop112:2888:3888在/root/training/zookeeper-3.4.6/tmp目录下创建一个myid的空文件echo 1 > /root/training/zookeeper-3.4.6/tmp/myid启动ZooKeeperzkServer.sh  start查看ZooKeeper的状态zkServer.sh  status

由于我们部署的是单节点的ZooKeeper,所以ZooKeeper的状态将是Standalone。

  • 部署Kafka

修改server.conf文件broker.id=0port=9092log.dirs=/root/training/kafka_2.11-2.4.0/logs/broker0zookeeper.connect=localhost:2181启动Kafkabin/kafka-server-start.sh config/server.properties &
  • 使用JPS查看后台进程

五、测试Kafka

创建Topicbin/kafka-topics.sh --create --zookeeper bigdata111:2181 --replication-factor 1 --partitions 3 --topic mytopic1发送消息bin/kafka-console-producer.sh --broker-list bigdata111:9092 --topic mytopic1接收消息消息消费bin/kafka-console-consumer.sh --bootstrap-server bigdata111:9092 --topic mytopic1从开始位置消费bin/kafka-console-consumer.sh --bootstrap-server bigdata111:9092 --from-beginning --topic topicName显示key消费bin/kafka-console-consumer.sh --bootstrap-server bigdata111:9092 --property print.key=true --topic mytopic1

上述就是小编为大家分享的Kafka的体系架构是怎样的了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

消息 数据 主题 消费 系统 发布者 消费者 订阅 代理 多个 订阅者 队列 集群 分析 体系 架构 文件 状态 节点 传输 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网金融科技 新华互联网科技学校 盈实互联网科技 互联网最新的科技有限公司 网络科技有限互联网 互联网未来科技 深圳齐家互联网科技 互联网金融监管科技 武汉健翔互联网络科技有限公司 互联网媒体平台算高科技产业 互联网科技人工智能实验室 允成互联网科技有限公司融资 长沙茂晟互联网科技有限公司 锡山区互联网智能科技产品供应 山东大美朱楼互联网科技有限公司 现代互联网科技公司 安徽九吞吴互联网科技有限公司 优雇互联网科技有限公司 广东猫王互联网科技有限公司电话 科技互联网企业在行动 有格互联网科技 互联网科技公司经营范围 智能科技公司是互联网公司吗 互联网科技英文 大白互联网科技 互联网方面的科技前沿 沐思想互联网科技有限公司 信承诺互联网科技有限公司 互联网硬科技公司 广州全民伙伴互联网科技有限公司
0