消息中间件简介

什么是消息中间件
  • 什么是消息?
    消息就是指在应用与应用之间传输的数据。消息可以很简单,比如一个字符串;消息也可以很复杂,比如一个对象。
  • 什么是消息队列中间件(Message Queue Middleware)?
    说直白一点,就是用来传递消息的组件。书上原话是:消息队列中间件是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,他可以在分布式环境下扩展进程间的通信。
  • 消息中间件适用于需要可靠的数据传送的分布式环境。采用消息中间件的系统中,不同的对象之间通过传递消息来激活对方的事件,以完成相应的操作。发送者将消息发送给消息服务器, 消息服务器将消息存放在若干队列中,在合适的时候再将消息转发给接收者。消息中间件能在不同平台之间通信,它常被用来屏蔽各种平台及协议之间的特性,实现应用程序之间的协同,其优点在于能够在客户和服务器之间提供同步和异步的连接,并且在任何时刻都可以将消息进行传送或者存储转发,这也是它比远程过程调用更进步的原因。


    18722707-07b9cc6b0af86617.png
    A、B应用之间通过消息中间件进行通信

    如上图,应用A和应用B通过通过消息中间件编程接口进行通信。

消息中间件的作用
  • 解耦:各种消息中间件提供了对应的编程接口,不同的应用之间利用这些接口进行编程。允许在不同的应用中独立的扩展或修改两边的处理过程,只要确保他们遵守同样的接口约束即可。
  • 冗余(存储):有些时候,数据的处理过程可能会失败。消息中间件可把消息进行持久化直到他被完全处理,避免了数据丢失的风险。
  • 削峰:在流量剧增的情况下,要保证应用继续发挥作用。但是这样流量剧增的情况并不多,如果以这类峰值为标准投入资源,是很大的浪费。消息中间件能使关键组件支撑突发访问压力,不会因为突发的超负荷请求而崩溃。
  • 异步通信:在许多时候应用不需要立即处理消息。消息中间件提供了异步处理机制,允许将一些消息放入消息中间件中,但并不立即消费它,在需要的时候再慢慢处理。
  • 可恢复性:当系统的一部分组件挂掉时,可以对消息进行保存,加入消息中间件的消息可以在系统恢复后继续被消费。
  • 缓冲:在任何重要系统中都会存在需要不同处理时间的元素,消息中间件通过一个缓冲层来帮助任务最高效率的执行,写入消息中间件的处理会尽可能的快速。该缓冲层有助于控制和优化数据流过系统的速度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值