返回顶部
首页 > 资讯 > 后端开发 > Python >Kafka中消息队列的两种模式讲解
  • 594
分享到

Kafka中消息队列的两种模式讲解

2024-04-02 19:04:59 594人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录kafka消息队列的两种模式1、点对点模式 2、发布/订阅模式 Kafka消息队列模型图解Kafka消息队列的两种模式 消息队列包括两种模式,点对点模式(po

Kafka消息队列的两种模式

消息队列包括两种模式,点对点模式(point to point, queue)和发布/订阅模式(publish/subscribe,topic)

1、点对点模式

点对点模式下包括三个角色:

  • 消息队列
  • 发送者 (生产者)
  • 接收者(消费者)

消息发送者生产消息发送到queue中,然后消息接收者从queue中取出并且消费消息。消息被消费以后,queue中不再有存储,所以消息接收者不可能消费到已经被消费的消息。

点对点模式特点:

  • 每个消息只有一个接收者(Consumer)(即一旦被消费,消息就不再在消息队列中);
  • 发送者和接收者间没有依赖性,发送者发送消息之后,不管有没有接收者在运行,都不会影响到发送者下次发送消息;
  • 接收者在成功接收消息之后需向队列应答成功,以便消息队列删除当前接收的消息;

 2、发布/订阅模式 

发布/订阅模式下包括三个角色:

  • 角色主题(Topic)
  • 发布者(Publisher)
  • 订阅者(Subscriber)

发布者将消息发送到Topic,系统将这些消息传递给多个订阅者。

发布/订阅模式特点:

  • 每个消息可以有多个订阅者;
  • 发布者和订阅者之间有时间上的依赖性。针对某个主题(Topic)的订阅者,它必须创建一个订阅者之后,才能消费发布者的消息。
  • 为了消费消息,订阅者需要提前订阅该角色主题,并保持在线运行;

Kafka消息队列模型图解

Kafka 的消息队列一般分为两种模式:点对点模式和发布订阅模式

Kafka 是支持消费者群组的,也就是说 Kafka 中会有一个或者多个消费者,如果一个生产者生产的消息由一个消费者进行消费的话,那么这种模式就是点对点模式

在这里插入图片描述

如果一个生产者或者多个生产者产生的消息能够被多个消费者同时消费的情况,这样的消息队列成为发布订阅模式的消息队列

在这里插入图片描述

队列模型非常简单 topic主题:

队列 就是消息的分类。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: Kafka中消息队列的两种模式讲解

本文链接: https://lsjlt.com/news/147960.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Kafka中消息队列的两种模式讲解
    目录Kafka消息队列的两种模式1、点对点模式 2、发布/订阅模式 Kafka消息队列模型图解Kafka消息队列的两种模式 消息队列包括两种模式,点对点模式(po...
    99+
    2024-04-02
  • Java分布式学习之Kafka消息队列
    目录介绍Kafka核心相关名称kafka集群安装kafka使用kafka文件存储Springboot整合kafka介绍 Apache Kafka 是分布式发布-订阅消息系统,在 ka...
    99+
    2024-04-02
  • 关于Kafka消息队列原理的总结
    目录Kafka消息队列原理Kafka的逻辑数据模型Kafka的分发策略Kafka的物理存储模型和查找数据的设计Kafka的持久化策略设计Kafka的节点间的数据一致性策略设计Kafk...
    99+
    2024-04-02
  • redis中的消息队列
    这期内容当中的小编将会给大家带来有关redis中的消息队列介绍,以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、认识消息队列1.1 消息队列概念“消息”是在两台计算机间传送的数据单位。...
    99+
    2022-11-30
    redis 消息队列 edi
  • 以PHP代码为实例详解RabbitMQ消息队列中间件的6种模式
    目录RabbitMQ 6种工作模式安装6种模式最后RabbitMQ 6种工作模式 对RabbitMQ 6种工作模式(简单模式、工作模式、订阅模式、路由模式、主题模式、RPC模式)进行...
    99+
    2023-05-19
    RabbitMQ模式php实例 RabbitMQ消息队列中间件
  • Linux中消息队列的使用方式
    这篇文章主要讲解了“Linux中消息队列的使用方式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中消息队列的使用方式”吧!1 消息队列的概念及使用过程1)消息队列的概念消息队列就是...
    99+
    2023-06-15
  • 消息队列RabbitMQ核心:简单(Hello World)模式、队列(Work Queues)模式、发布确认模式
    文章目录 一、简单模式(Hello World)代码实现 二、队列模式(Work Queues)轮训分发消息代码实现 消息应答概述 RabbitMQ持久化不公平分发 三、发布确认模式原理概述发布确认策略单个确认...
    99+
    2023-08-23
    java-rabbitmq rabbitmq java
  • WCF消息队列的类型有几种
    这篇文章主要介绍WCF消息队列的类型有几种,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!WCF经过长时间的发展,很多用户都很了解WCF了,这里我发表一下个人理解,和大家讨论讨论。WCF消息队列Message是由通信的...
    99+
    2023-06-17
  • Python中线程的MQ消息队列实现以及消息队列的优点解析
    “消息队列”是在消息的传输过程中保存消息的容器。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,直到可以成...
    99+
    2022-06-04
    队列 消息 线程
  • Android 消息队列模型详解及实例
    Android 消息队列模型详解及实例Android系统的消息队列和消息循环都是针对具体线程的,一个线程可以存在(当然也可以不存在)一个消息队列(Message Queue)和一个消息循环(Looper)。Android中除了UI线程(主线...
    99+
    2023-05-31
    android 消息队列 roi
  • 分布式消息队列RocketMQ概念详解
    目录1.MQ概述1.1 RocketMQ简介1.2 MQ用途1.3 常见MQ产品2.RocketMQ 基本概念2.1 消息2.2 主题2.3 标签2.4 队列2.5 Producer...
    99+
    2023-05-19
    分布式消息队列RocketMQ概念 消息队列RocketMQ RocketMQ概念
  • 分布式面试消息队列解决消息重复保证消息顺序
    目录引言1、面试官:那你有考虑过消息重复问题怎么解决吗?2、面试官:在多集群消息架构中,如果消费端要求接收到的消息是有序的,怎么解决消息顺序消费问题?3、面试官:那如何做到topic...
    99+
    2024-04-02
  • kafka rabbitMQ及rocketMQ队列的消息可靠性保证分析
    目录1.消息丢失1.生产者发送失败2.消费者消费失败3.队列因为自身体原因丢失数据2.消息顺序1.kafka2.rocketMQ3.rabbitMQ3.消息重复1.消息丢失 1.生产...
    99+
    2024-04-02
  • Java自带消息队列Queue的使用教程详细讲解
    目录阻塞队列和非阻塞队列非阻塞队列阻塞队列抛出异常特殊值阻塞超时总结阻塞队列和非阻塞队列 非阻塞队列 ConcurrentLinkedQueue 单向链表结构的无界并发队列, 非阻塞...
    99+
    2023-05-20
    Java自带消息队列Queue Java Queue Java消息队列
  • Redis在消息队列中的妙用
    Redis在消息队列中的妙用消息队列是一种常见的解耦架构,用于在应用程序之间传递异步消息。通过将消息发送到队列中,发送者可以在不等待接收者响应的情况下继续执行其他任务。而接收者可以在适当的时间从队列中获取消息并进行处理。Redis是一种常用...
    99+
    2023-11-07
    redis 消息队列 妙用
  • Kafka Producer中的消息缓存模型图解详解
    目录前言什么是消息累加器RecordAccumulator消息缓存模型ProducerBatch的内存大小内存分配Batch的创建和释放问题和答案总结前言 在阅读本文之前, 希望你可...
    99+
    2024-04-02
  • kafka 消息队列中点对点与发布订阅的区别说明
    目录背景知识1.JMS中定义2.二者分析与区别2.1 点对点模式2.2 发布订阅模式3.流行的消息队列模型比较3.1 RabbitMQ3.2 Kafka背景知识 JMS一个在&nbs...
    99+
    2024-04-02
  • RabbitMQ实现延迟队列的两种方式详解
    目录1. 用插件1.1 安装插件1.2 消息收发2. DLX 实现延迟队列2.1 延迟队列实现思路2.2 案例3. 小结定时任务各种各样,常见的定时任务例如日志备份,我们可能在每天凌...
    99+
    2024-04-02
  • RabbitMQ和Kafka怎么保证消息队列的可靠性传输
    本篇内容主要讲解“RabbitMQ和Kafka怎么保证消息队列的可靠性传输”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“RabbitMQ和Kafka怎么保证消息队列的可靠性传输”吧!面试题如何保...
    99+
    2023-06-02
  • redis中队列消息实现应用解耦
    本篇文章给大家分享的是有关redis中队列消息实现应用解耦,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、如果redis服务器挂掉了怎么办啊...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作