KafKa

作者: 请叫我蒋OO | 来源:发表于2021-01-13 15:01 被阅读0次

一. KafKa 是什么

kafaka是分布式消息队列:生产者消费者的功能。它提供了类似JMS的特性,但在设计实现上完全不同,它并不是JMS规范实现的。
kafka对消息保存时根据Topic进行归类,发送消息者为生产者,消息接收者为消费者。

二. JMS

1. JMS

JMS是JAVA提供的消息规范。通信规范

2. JMS消息传输模型

  • 点对点
    一对一,消费者主动拉取数据。数据只有一份,一旦消费,就没有了。
  • 发布订阅
    一对多,推送给订阅者。

3. JMS核心组件

  • Destination:消息发送的目的地。

  • Message:消息

  • Producer:生产者

  • MessageConsumer:消费者

三. 消息队列的重要性

消息队列:解耦、异步、并行

  • 用户注册并行执行


    并行.png
  • 用户注册的最终一致性
    主程序:发送消息-->用户注册


    微信截图_20210113114607.png

保证主程序的正常执行,执行成功后,发送MQ消息出去,有其他系统完成剩余工作。最终保持一致性。

四. KafKa

1. KafKa概念

类JMS,消费者可以有多个,并且主动拉取数据;数据生产者messageProducer ;数据消费者messageConsumer;数据分类,主题destination topic ;管理数据的进程,实例broker;数据分片:partition

2. KafKa核心组件

  • Topic:消息根据Topic进行归类
  • Producer:生产者
  • Consumer:消费者
  • broker:每个kafKa实例
  • zookeeper:保存元数据信息。

提问:
1.消费者负载均衡策略。 一个消费者组中数据最好和分片数对应,一个分片对应组中的一个消费成员,如果组中的成员太多,必有成员空闲。

  1. 数据生产到集群中的哪个partination是由生产者决定的。(生产者具有分组策略)

  2. partination数量和broker数量关系?

4.每个partination 数据如何由内存保存到磁盘?

  1. 如何保证消费者消费的数据是有序的?

6.如何保证数据的完全生产?

7.消费者如何标记消费状态?


KafKa集群搭建

相关文章

网友评论

      本文标题:KafKa

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