美文网首页
8 消息队列浅谈

8 消息队列浅谈

作者: 滔滔逐浪 | 来源:发表于2023-11-06 09:24 被阅读0次

最基础的消息队列应该具备五个模块。
通信协议:用来完成客户端(生产者和消费者)和 Broker 之间的通信,比如生产或消费。
网络模块:客户端用来发送数据,服务端用来接收数据。
存储模块:服务端用来完成持久化数据存储。
生产者:完成生产相关的功能。
消费者:完成消费相关的功能。
消息队列的核心特性是高吞吐、低延时、高可靠,所以在协议上至少需要满足:
协议可靠性要高,不能丢数据。
协议的性能要高,通信的延时要低。
协议的内容要精简,带宽的利用率要高。
协议需要具备可扩展能力,方便功能的增减。
目前业界的通信协议可以分为公有协议和私有协议两种。
公有协议指公开的受到认可的具有规范的协议,比如 JMS、HTTP、STOMP 等。
私有协议是指根据自身的功能和需求设计的协议,一般不具备通用性,比如 Kafka、RocketMQ、Puslar 的协议都是私有协议。
其实消息队列领域是存在公有的、可直接使用的标准协议的,比如 AMQP、MQTT、OpenMessaging,它们设计的初衷就是为了解决因各个消息队列的协议不一样导致的组件互通、用户使用成本高、重复设计、重复开发成本等问题。
但是,公有的标准协议讨论制定需要较长时间,往往无法及时赶上需求的变化,灵活性不足。
从功能支持、迭代速度、灵活性上考虑,大多数消息队列的核心通信协议都会优先考虑自定义的私有协议

相关文章

  • 浅谈消息队列

    MQ是什么 屏蔽底层复杂的通讯协议,定义了一套应用层的、更加简单的通讯协议 MQ通过将消息的发送和接收分离来实现应...

  • 浅谈消息队列之RocketMQ

    什么是消息队列? 为什么要用消息队列? 即,应用场景是什么,也就是用了有什么好处 解耦 多应用间通过消息队列对同...

  • 消息队列:消息队列简介

    1. 什么是消息队列 消息队列(message queue),是一种应用程序的通信方法; 消息队列是 生产者-消费...

  • 13. Redis 消息队列

    8 Redis消息队列 8.1 生成者消费者模式 8.1.1 模式介绍 8.1.2 队列介绍 8.1.3 生成者发...

  • 消息中间件

    消息中间件,也可以叫做中央消息队列或者是消息队列(区别于本地消息队列,本地消息队列指的是 JVM 内实现的队列实现...

  • 消息队列对比

    引用: 常用消息队列对比消息队列及常见消息队列介绍 常用消息队列 1. RabbitMQ 用erlang语言开发的...

  • 消息队列应用-使用异步队列就解耦了吗

    消息队列作用一文介绍了为什么要使用消息队列。我们再来讨论下如何有效使用消息队列。 消息队列模式 目前主流消息队列主...

  • Kafka常见问题解决

    概要:我们使用消息队列,就需要知道为什么要用消息队列,什么场景需要用消息队列,使用消息队列能带来哪些好处和消息队列...

  • 进程间通信(下)

    消息队列 在UNP第二卷中详细介绍了两种消息队列:Posix消息队列和System V消息队列。这两种消息队列很相...

  • APUE读书笔记-15进程内部通信(6)

    7、消息队列 消息队列是存放在内核中的消息的链表,通过消息队列标识进行标记。我们把消息队列称为队列,把它的标识称为...

网友评论

      本文标题:8 消息队列浅谈

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