美文网首页
kafka入门

kafka入门

作者: 就这些吗 | 来源:发表于2020-02-20 05:17 被阅读0次

什么是消息队列?

存储数据的队列,借助消息队列可以做到异步、解耦、削峰。

kafka是消息队列模型是怎么样的?

image.png

Producer(生产者) : 产生消息的一方。
Consumer(消费者) : 消费消息的一方。
Broker(代理) : 可以看作是一个独立的 Kafka 实例。多个 Kafka Broker 组成一个 Kafka Cluster。
同时,你一定也注意到每个 Broker 中又包含了 Topic 以及 Partion 这两个重要的概念:

Topic(主题) : Producer 将消息发送到特定的主题,Consumer 通过订阅特定的 Topic(主题) 来消费消息。
Partion(分区) : Partion 属于 Topic 的一部分。一个 Topic 可以有多个 Partion ,并且同一 Topic 下的 Partion 可以分布在不同的 Broker 上,这也就表明一个 Topic 可以横跨多个 Broker 。

同时需要注意的点:

上图中如果消费者组中的某个消费者挂了,那么其中一个消费者可能就要消费两个partition了
如果只有三个partition,而消费者组有4个消费者,那么一个消费者会空闲
如果多加入一个消费者组,无论是新增的消费者组还是原本的消费者组,都能消费topic的全部数据。(消费者组之间从逻辑上它们是独立的)

消息队列中有内部的topic,存储各个消费者的消费进度

image.png

Kafka 中发送 1 条消息的时候,可以指定topic, partition, key,data(数据) 4 个参数。如果你发送消息的时候指定了 partion 的话,所有消息都会被发送到指定的 partion。并且,同一个 key 的消息可以保证只发送到同一个 partition,这个我们可以采用表/对象的 id 来作为 key 。

怎么保证消息的有序?

1.1 个 Topic 只对应一个 Partion
2.(推荐)发送消息的时候指定 key/partion。

消息队列的持久化与高可用

image.png

相关文章

  • Kafka视频集

    kafka企业级入门实战完整版 Kafka系列教程 Kafka入门 分布式消息通信Kafka原理剖析 阿里架构师直...

  • 再看kafka——spring boot集成kafka

    之前自己写过一篇入门文章kafka简单入门及与spring boot整合,主要是结合kafka官方的文档入门,学习...

  • Kafka学习

    MQ入门总结(六)Kafka的原理和使用 Kafka的架构原理,你真的理解吗? 真的,Kafka 入门一篇文章就够...

  • Kafka快速开始

    入门 1.简介 Kafka is a distributed streaming platform,kafka是一...

  • 【kafka】为什么要学习Kafka?

    KAFKA官方文档入门指南 http://ifeve.com/kafka-1 为什么要学习Kafka? http:...

  • (3)kafka的安装部署以及基本操作

    1.kafka 的安装部署 可以去看kafka的快速入门:http://kafka.apache.org/quic...

  • kafka入门

    Apache Kafka 入门 1.kafka简介和产生的背景 什么是 Kafka Kafka 是一款分布式消息发...

  • kafka极简入门(四)--常用配置

    回顾:kafka极简入门(三)--创建topic 前言 kafka针对broker, topic, produce...

  • kafka极简入门(二) --安装

    回顾kafka极简入门(一) --简介 1.单机版kafka安装 kafka需要结合zookeeper使用,所以本...

  • Kafka入门

    Kafka官网:http://kafka.apache.org/入门1.1 介绍Kafka™ 是一个分布式流处理系...

网友评论

      本文标题:kafka入门

      本文链接:https://www.haomeiwen.com/subject/mnrtqhtx.html