消息队列基础知识

简介: 什么是消息队列

什么是消息队列?

我们可以把消息队列看作是一个存放消息的容器,当我们需要使用消息的时候,直接从容器中取出消息供自己使用即可。由于队列 Queue 是一种先进先出的数据结构,所以消费消息时也是按照顺序来消费的。

Message queue

参与消息传递的双方称为 生产者消费者 ,生产者负责发送消息,消费者负责处理消息。

网络异常,图片无法展示
|
发布/订阅(Pub/Sub)模型

我们知道操作系统中的进程通信的一种很重要的方式就是消息队列。我们这里提到的消息队列稍微有点区别,更多指的是各个服务以及系统内部各个组件/模块之前的通信,属于一种 中间件

维基百科是这样介绍中间件的:

中间件(英语:Middleware),又译中间件、中介层,是一类提供系统软件和应用软件之间连接、便于软件各部件之间的沟通的软件,应用软件可以借助中间件在不同的技术架构之间共享信息与资源。中间件位于客户机服务器的操作系统之上,管理着计算资源和网络通信。

简单来说:中间件就是一类为应用软件服务的软件,应用软件是为用户服务的,用户不会接触或者使用到中间件。

除了消息队列之外,常见的中间件还有 RPC 框架、分布式组件、HTTP 服务器、任务调度框架、配置中心、数据库层的分库分表工具和数据迁移工具等等。

随着分布式和微服务系统的发展,消息队列在系统设计中有了更大的发挥空间,使用消息队列可以降低系统耦合性、实现任务异步、有效地进行流量削峰,是分布式和微服务系统中重要的组件之一。

目录
相关文章
|
大数据 定位技术
openGPS.cn - 高精度IP定位原理,定位误差说明
【ip定位历史】 关于IP定位,最早是通过运营商实现,每个运营商申请到的ip段,在某个范围内使用。 因此早期只能是国家为单位的基础数据。 对于比较大的国家,就进一步划分,比如,中国某通讯公司(不打广告),固定将某些ip分配某些机房使用,而这些机房则具备地域属性,因此就可以知道某些ip的位置是哪个省市区。 在进一步,网上有种测算路由的方式进行定位,就是由大范围逐个
2947 0
|
机器学习/深度学习 数据采集 TensorFlow
手把手搭建一个【卷积神经网络】
本文介绍卷积神经网络的入门案例,通过搭建和训练一个模型,来对10种常见的物体进行识别分类;
157 0
|
监控 数据可视化 搜索推荐
什么是BPM系统?BPM流程管理系统介绍
BPM系统(英文全称:Business Process Management,翻译后简称BPM)即业务流程管理系统,是指对端到端业务流程进行建模、分析和优化,以实现战略业务目标,其特点是注重流程驱动为核心,实现端到端全流程信息化管理。BPM方法可以应用于经常重复、正在进行或可预测的任务和流程。
什么是BPM系统?BPM流程管理系统介绍
|
9月前
|
开发工具 git Windows
【Git】‘git‘ 不是内部或外部命令,也不是可运行的程序
【Git】‘git‘ 不是内部或外部命令,也不是可运行的程序
|
监控 Java Linux
开源流程引擎Camunda
开源流程引擎Camunda
|
弹性计算 容器
容器学习实验(3)——查看容器系统信息
本文介绍了容器学习实验的基本操作和启动方法。详细说明了容器的启动步骤和注意事项,介绍了容器操作的基本方法和注意事项。通过本文的学习,读者可以掌握容器学习实验的基本技能和知识。
|
云栖大会 开发者 数据库
2019云栖大会精品资料下载
9月25日-27日,2019杭州云栖大会圆满成功。大会包含130+场峰会和专场、上千位重量级分享嘉宾以及硬核科技大型展区。相关详细议程和视频回放请见杭州云栖大会官网。
81566 0
|
C++ 计算机视觉
OpenCV-图像NaN处理
OpenCV-图像NaN处理
186 0
|
Shell 网络架构
|
9月前
|
前端开发 小程序 Java
基于SSM实现图书馆座位预约系统
基于SSM实现图书馆座位预约系统

热门文章

最新文章