【Java】kafka技术原理解析
前言:有好多同学留言说看不懂我之前写的博客——kafka应用实例篇,不明白里面的代码为什么那么写,我找到了自己之前写的关于kafka技术解析的ppt,现将部分重点及相关原理整理出来供大家参考。
1. 消息队列介绍
kafka定义:kafka是一个分布式的基于发布/订阅模式的消息队列(message queue),主要应用于大数据实时处理领域。
消息队列的定义
两种模式的区别
发布订阅模式如何实现实现了负载均衡?
2. 流行队列的模型比较
RabbitMQ
生产端发送一条消息通过路由投递到Queue,只有一个消费者能消费到。
当RabbitMQ需要支持多订阅时,发布者发送的消息通过路由同时写到多个Queue,不同订阅组消费此消息。
Kafka
3. Kafka架构
注意1:一个主题中的一个分区中的消息只能被一个消费者组中的一个消费者消费
注意2:但如果是不同的消费者组可以出现:一个分区中的消息可以被不同消费者组中的多个消费者同时消费
注意3:当一个消费者组中的消费者数大于分区数时:会造成消费者的资源浪费
注意4:当消费者数小于分区数:一个消费者可以同时消费两个消费者组中的消息
4. Kafka生产过程分析
1.写入方式--producer采用推(push)模式将消息发布到broker
5. Kafka的存储策略
文件存储方式
以上是 【Java】kafka技术原理解析 的全部内容, 来源链接: utcz.com/a/88702.html