什么是Kafka?

目录

Kafka

什么是消息系统?

点对点

发布和订阅系统

什么是Kafka结构?

主题和发布者

集群和Brokers

Zookeeper

Kafka触发

Kafka管理,创建集群和主题

卡夫卡vs阿卡


Kafka

Kafka是一个分布式发布——订阅消息传递系统。Kafka快速、可扩展且耐用。它保留主题中的消息源。生产者将数据写入主题,消费者从主题中读取数据。

Zookeeper需要覆盖Kafka生态系统,因此有必要下载它,更改其属性并最终设置环境。在运行Zookeeper之后,应该下载Kafka,然后开发人员可以借助一些指令创建代理,集群和主题。

什么是消息系统?

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

点对点

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

发布和订阅系统

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

什么是Kafka结构

Kafka是分布式发布者——订阅者,具有高吞吐量,可以处理大量数据。Kafka是实时数据流,每秒可处理200万次写入。

Kafka结构如下:

主题和发布者

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

集群和Brokers

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

Zookeeper

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

Kafka触发

1、从以下链接下载Kafkahttps://kafka.apache.org/downloads

2、Kafka配置,转到路径:

  1. C:\kafka_2.11–0.10.2.0\config
  2. server.properties
  3. log.dirs=C:\kafka_2.11–0.10.2.0\kafka-logs
  4. listeners=PLAINTEXT://127.0.0.1:9092
  5. zookeeper.properties
  6. dataDir=C:\kafka_2.11–0.10.2.0\zookeeper
  7. consumer.properties
  8. zookeeper.connect=127.0.0.1:2181

3、从以下链接下载Zookeeperzookeeper-3.4.13.tar.gz” https://archive.apache.org/dist/zookeeper/zookeeper-3.4.13/

4、启动Zookeeper

  1. cmd提示符
  2. cd C:\zookeeper-3.4.13\bin
  3. zkserver

5、启动Kafka

  1. cmd提示符
  2. cd C:\kafka_2.11–0.10.2.0
  3. Command: “.\bin\windows\kafka-server-start.bat .\config\server.properties

6、在Kafka上创建一个主题:

  1. cmd提示符
  2. cd C:\kafka_2.11–0.10.2.0\bin\windows
  3. Command: “kafka-topics.bat — create — zookeeper localhost:2181 — replication-factor 1 — partitions 1 — topic Topic-IoT

7、删除Kafka上的主题:

  1. cmd提示符
  2. cd C:\kafka_2.11–0.10.2.0\bin\windows
  3. Command: “./bin/kafka-topics.sh — zookeeper localhost:2181 — delete — topic <TopicName>

8、在Kafka上创建一个生产者(Producer)

  1. cmd提示符
  2. cd C:\kafka_2.11–0.10.2.0\bin\windows
  3. Command: “kafka-console-producer.bat — broker-list localhost:9092 — topic Topic-IoT

9、在Kafka上创建消费者(Consumer)

  1. cmd提示符
  2. cd C:\kafka_2.11–0.10.2.0\bin\windows
  3. Command: “kafka-console-consumer.bat — zookeeper localhost:2181 — topic Topic-IoT

10、无论你在生产者” 上写什么,都会出现在消费者 ” 中。

Kafka管理,创建集群和主题

您也可以使用此链接https://github.com/yahoo/kafka-manager以使用可视化配置。您只需要在Windows中配置主机:

C:\Windows\System32\drivers\etc\hosts
附加以下行:
127.0.0.1 kafkaserver

卡夫卡vs阿卡

 

原文地址:https://www.codeproject.com/Articles/5147553/What-is-Kafka

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值