Kafka的点对点模式、发布订阅模式、基础架构

6 篇文章 1 订阅
订阅专栏

一、定义

Kafka 是一个分布式的基于发布/订阅模式消息队列(Message Queue),主要应用于 大数据实时处理领域。 

二、消息队列

 

  •  使用消息队列的好处

1)解耦

允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。

2)可恢复性

系统的一部分组件失效时,不会影响到整个系统。消息队列降低了进程间的耦合度,所 以即使一个处理消息的进程挂掉,加入队列中的消息仍然可以在系统恢复后被处理。

3)缓冲 

有助于控制和优化数据流经过系统的速度,解决生产消息和消费消息的处理速度不一致 的情况。

4)灵活性 & 峰值处理能力

在访问量剧增的情况下,应用仍然需要继续发挥作用,但是这样的突发流量并不常见。 如果为以能处理这类峰值访问为标准来投入资源随时待命无疑是巨大的浪费。使用消息队列 能够使关键组件顶住突发的访问压力,而不会因为突发的超负荷的请求而完全崩溃。

5)异步通信

很多时候,用户不想也不需要立即处理消息。消息队列提供了异步处理机制,允许用户 把一个消息放入队列,但并不立即处理它。想向队列中放入多少消息就放多少,然后在需要 的时候再去处理它们。

  • 消息队列的两种模式

(1)点对点模式一对一,消费者主动拉取数据,消息收到后消息清除)

消息生产者生产消息发送到Queue中,然后消息消费者从Queue中取出并且消费消息。 消息被消费以后,queue 中不再有存储,所以消息消费者不可能消费到已经被消费的消息。 Queue 支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费。

 

(2)发布/订阅模式 (一对多,消费者消费数据之后不会清除消息)

消息生产者(发布)将消息发布到 topic 中,同时有多个消息消费者(订阅)消费该消 息。和点对点方式不同,发布到 topic 的消息会被所有订阅者消费。

 

三、Kafka基础架构 

1)Producer :消息生产者,就是向 kafka broker 发消息的客户端;

2)Consumer :消息消费者,向 kafka broker 取消息的客户端;

3)Consumer Group (CG):消费者组,由多个 consumer 组成。消费者组内每个消费者负 责消费不同分区的数据,一个分区只能由一个组内消费者消费;消费者组之间互不影响。所 有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者

4)Broker :一台 kafka 服务器就是一个 broker。一个集群由多个 broker 组成。一个 broker 可以容纳多个 topic。

5)Topic :可以理解为一个队列,生产者和消费者面向的都是一个 topic

6)Partition:为了实现扩展性,一个非常大的 topic 可以分布到多个 broker(即服务器)上, 一个 topic 可以分为多个 partition,每个 partition 是一个有序的队列;

7)Replica:副本,为保证集群中的某个节点发生故障时,该节点上的 partition 数据不丢失,且 kafka 仍然能够继续工作,kafka 提供了副本机制,一个 topic 的每个分区都有若干个副本, 一个 leader 和若干个 follower

8)leader:每个分区多个副本的“主”,生产者发送数据的对象,以及消费者消费数据的对 象都是 leader。

9)follower:每个分区多个副本中的“从”,实时从 leader 中同步数据,保持和 leader 数据 的同步。leader 发生故障时,某个 follower 会成为新的 follower。

kafka消费的三种模式_快速认识Kafka
weixin_33567029的博客
12-03 1万+
1.Kafka是什么 简单的说,Kafka是由Linkedin开发的一个分布式的消息队列系统(Message Queue)。kafka的架构师jay kreps非常喜欢franz kafka,觉得kafka这个名字很酷,因此将linkedin的消息传递系统命名为完全不相干的kafka,没有特别含义。2.解决什么问题kafka开发的主要初衷目标是构建一个用来处理海量日志,用户行为和网站运营统计等的数...
Kafka基本架构介绍
03-03
有两种类型的消息模式可用-一种是点对点,另一种是发布-订阅(pub-sub)消息系统。大多数消息模式遵循pub-sub。(1)点对点消息系统在点对点系统中,消息被保留在队列中。一个或多个消费者可以消耗队列中的消息,但是...
Kafka - 消息队列的两种模式
小工匠
10-25 5250
这种模式适用于一对多的通信,其中消息的发送者不需要关心谁会接收消息,通常用于事件处理、日志记录和实时通知等场景。消息队列主要分为两种模式点对点模式(一个生产者对口一个消费者)和发布/订阅模式(一对多)。这种模式适用于一对一的通信,其中生产者和消费者之间有直接的关联,通常用于任务分发和处理。在实际的消息队列系统中,可以根据需求选择合适的模式来实现不同类型的消息传递。这两种模式有各自的优势和适用性,选择哪种模式取决于应用程序的需求。消息队列确实可以根据消息传递的模式分为。
Kafka的理论基础和配置
qq_42098875的博客
07-28 607
一、什么是kafkaKafka是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等。主要应用场景是:日志收集系统和消息系统。 举个例子,生产者消费者,生产者生产鸡蛋,消费者消费鸡蛋,生产者生产一个鸡蛋,消费者就消费一个鸡蛋,假设消费者消费鸡蛋的时候噎住了(系统宕机了),生产者还在生产鸡蛋,那新生产的鸡蛋就丢失了。再比如生产者很强劲(大交易量的情况),生产者1秒钟生产100个鸡蛋,消费者1
kafka-消费模式图解(点对点发布订阅模式
最新发布
小丁的博客
05-28 123
点对点发布订阅模式
集群配置Kafka,可视化
星星应该哈哈大笑,反正宇宙是个空旷的地方。
08-28 161
在主节点master配置环境变量。
消息队列——kafka基础
qq_51936245的博客
06-04 2318
Kafka 是一个分布式的---基于发布/订阅模式的消息队列(Message Queue),主要应用于 大数据实时处理领域。发布/订阅模式​ 原文链接:https://blog.csdn.net/tjvictor/article/details/5223309​ 定义了一种一对多的依赖关系,让多个订阅者对象同时监听某一个主题对象。这个主题对象在自身状态变化时,会通知所有订阅者对象,使它们能够自动更新自己的状态。​将一个系统分割成一系列相互协作的类有一个很不好的副作用,那就是需要维护相应对象间的一致性。
kafka 订阅模式
zhaoyangjian724的专栏
09-30 1052
>^Cnode1:/root/kafka_2.12-2.4.0#bin/kafka-console-producer.sh --broker-list 192.168.137.2:9092 --topic test_topic >aaaaaaaaa >bbbbbbbbb >ccccccccc >ddddddddd >eeeeeeeee >fffffffff >ggggggggg #!/usr/bin/env python # coding=utf-8..
Kafka框架基础概念
01-20
Kafka 提供了两种主要的消息传递模式点对点和发布/订阅。在点对点模式下,每个消息仅由一个消费者消费,保证了消息顺序;而在发布/订阅模式中,一个主题可以有多个订阅者,消息可以被多个消费者消费,提高了数据的...
Kafka设计解析(一)-Kafka背景及架构介绍
01-27
Kafka设计解析(一)-Kafka背景及架构介绍】 Kafka,作为一个由LinkedIn创建并开源的分布式消息系统,以其强大的分布式特性和高吞吐率而受到广泛关注。它最初被设计用于处理LinkedIn的活动流数据和运营数据处理,...
kafka基础原理.doc
07-09
Kafka支持两种消息队列模式点对点和发布/订阅模式点对点模式下,每个消息仅被一个消费者消费;而在发布/订阅模式下,一个消息可以被多个订阅者消费。 - **优点**:消息队列提供了诸多优势,如解耦、可恢复性、...
2021年JAVA核心知识点整理.rar
06-18
1. **消息模型**:点对点、发布/订阅模型的理解及其应用场景。 2. **消息确认机制**:确保消息的可靠传递。 3. **消息中间件**:了解其主要功能和选型考虑因素。 **设计模式** 设计模式是解决软件设计中常见问题...
Kafka 入门
xiaolyuh的专栏
09-27 1741
消息中间件基本架构 消息中间件基本上可以分为三部分: Product 生产者,消息的产生方,生产者会将消息发送到消息队列。 queue 消息队列,接受并存储生产者的消息。 Consumer 消费者,消费消息队列中的消息。 消息中间件的作用 消息队列的主要作用削峰填谷、异步、解耦。 消费消息的两种模式 消息消费的两种模式发布订阅模式点对点模式发布订阅模式(一对多) 消费者消费完消息后,消息不会被删除,消息会存储一段时间,这种模式下的消息会被所有消费者消费。 这种模式下消费消息又有两种方式:
聊一下kafka的消费组
weixin_52437323的博客
03-02 139
kafka消费组
kafka消费模式
weixin_49132861的博客
03-21 7114
kafka消费模式
Kafkakafka消费者的三种模式(最多/最少/恰好消费一次)&生产者幂等性
m0_45406092的博客
08-10 7588
文章目录概述回顾ack配置幂等性参考 概述 at most once(消费者最多收到一次消息,0--1次):acks = 0 可以实现。 acks=0 保证producer往leader只发送一次,不管是否发送成功,因此可能丢数据,但不会重复发送 at least once(消费者至少收到一次消息,1--多次):ack = all 或-1可以实现。 exactly once(消费者刚好收到一次消息):at least once 加上消费者幂等性可以实现,还可以用kafka生产者的幂等性来实现。
Kafka分布式发布订阅消息系统
m0_57781407的博客
09-10 1967
大数据系统面临的首要困难是海量数据之间该如何进行传输。Kafka、RabbitMQ、ActiveMQ等,Kafka 是专门为分布式高吞吐量系统而设计开发的,它非常适合在海量数据集的应用程序中进行清息传递。 Kafka是由Apache软件基金会开发的一个开源流处理平台,它使用Scala和Java语言编写,是一个基于Zookeeper系统的分布式发布订阅消息系统,该项目的设计初衷是为实时数据提供一个统一、高通量、低等待的消息传递平台。
python使用Kafka
roy8666的博客
08-19 6600
概念 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等 Kafka 是一个分布式流处理框架 可以像一个消息中间件一样读写数据流(即,发布和订阅消息) Kafka 还拥有分布式流处理以及存储到磁盘的功能,所以比消息中间件更加强 特性 高吞吐量、低延迟:kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒,每个topic可以分多个parti
kafka的消息发送的三种模式
u012684933的专栏
05-29 8533
1. At most once模式    消费者读取消息,更新消息的offset,然后处理消息。这种方式的风险是在更新消息的offset之后,处理消息结果的输出之前消费者挂掉,消费者再启动的时候,从新的offset开始消费消息,导致处理消息丢失 2. At least once模式   消费者读取消息,处理消息并输出,更新消息的offset。这种方式的风险是在处理消息的结果输出之后,更新
kafka公布式发布订阅消息系统的技术架构
06-12
Kafka是一个分布式发布订阅消息系统,其技术架构包括以下几个组件: 1. Broker:Kafka集群中的每个节点都是一个Broker,用于存储和处理消息。 2. Topic:消息发布的逻辑概念,相当于一个消息队列,每个Topic可以被分成多个Partition。 3. Partition:每个Topic可以被分成多个Partition,每个Partition可以存储一部分消息。 4. Producer:消息的生产者,将消息发送到指定的Topic。 5. Consumer:消息的消费者,从指定的Topic订阅消息并进行消费。 6. Consumer Group:每个Consumer属于一个Consumer Group,同一个Consumer Group中的Consumer共同消费一个Topic中的消息,每个Partition只能被一个Consumer Group中的一个Consumer消费。 Kafka的消息处理流程如下: 1. Producer将消息发送到指定的Topic中。 2. Broker将消息存储在对应的Partition中。 3. Consumer Group中的Consumer订阅对应的Topic,消费Partition中的消息。 4. 每个Consumer维护一个Offset,表示已经消费的消息位置,Broker会定期向Consumer发送消息的Offset信息,保证消息的正确消费。 Kafka的架构具有高可靠性、高扩展性、高吞吐量等特点,被广泛应用于大数据处理、日志收集和实时流处理等场景。

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • Seata分布式事务失效,不生效(事务不回滚)的常见场景 13617
  • Redis搭配RedisTemplate实现分布式锁实战实例 11163
  • VUE的6种事件修饰符 5754
  • Kafka的点对点模式、发布订阅模式、基础架构 5460
  • Springmvc中拦截器与过滤器的区别 4850

分类专栏

  • spring-boot 10篇
  • redis 5篇
  • spring-cloud 8篇
  • 大数据 29篇
  • MQ 6篇
  • vue 2篇
  • mysql 1篇
  • js 1篇
  • spring 3篇
  • 其它 1篇
  • spring-security 7篇
  • Mybatis 7篇
  • JAVA-线程 8篇
  • spring-mvc 9篇
  • JAVA-动态代理 1篇
  • JAVA-IO 2篇

最新评论

  • 脏写、脏读、不可重复读、幻读的区别

    ToString!: 感谢,写的很清晰,解决了我的疑惑表情包

  • Kafka的点对点模式、发布订阅模式、基础架构

    保护我的小乌芸: 大佬,最后一行应该是“某个 follower 会成为新的 leader”吧。

  • mybatis的三层架构

    babyWorld: 不错,深入浅出,通俗易懂

  • Springmvc中获取前端参数的方法

    m0_63694695: 大佬 为什么我的getName输出的姓名是一串字符

  • Seata分布式事务失效,不生效(事务不回滚)的常见场景

    剑神Smile: 我的是删除 global_table 表中的回滚记录就 OK 了

大家在看

  • Python机器学习实战:使用机器学习预测股票市场走势 427
  • YoloV8改进策略:卷积篇|Kan行天下之ReluKan
  • 编织文字之美:WebKit的CSS文本格式化能力全解析 668
  • 重塑水资源管理的新篇章:深度剖析智慧水利解决方案的前沿技术与应用,探索其如何推动水利行业向智能化、高效化、可持续化方向迈进
  • Keysight 是德 DSA90804A 高性能示波器

最新文章

  • Redis搭配RedisTemplate实现分布式锁实战实例
  • Seata分布式事务失效,不生效(事务不回滚)的常见场景
  • Seata启动错误Communications link failure解决方法
2022年7篇
2021年95篇

目录

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

PHP网站源码平湖SEO按天收费福田网站优化按天计费罗湖模板推广同乐seo优化爱联百度网站优化南山网站搭建龙岗网站设计荷坳企业网站建设双龙阿里店铺运营西乡网页制作宝安优化石岩网络广告推广观澜百搜词包福永设计网站东莞企业网站制作罗湖SEO按效果付费坪山网站搜索优化同乐优秀网站设计罗湖seo观澜网站定制永湖阿里店铺托管南联网页制作坂田网站关键词优化塘坑网站优化按天收费光明模板推广福田外贸网站建设罗湖模板网站建设塘坑关键词按天计费深圳关键词按天收费罗湖百度关键词包年推广歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化