rocketMQ系列(一): 消息中间件及rocketMQ简介

一 消息中间件介绍

消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。
消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。

概念图:

æ¶æ¯ä¸­é´ä»¶çæ¦è¿°å¾

二 消息中间件的使用场景

王阿姨是小军的妈妈。

王阿姨希望小军多读书,常寻找好书给小军看,之前的方式是这样:王阿姨问小军什么时候有空,把书给小军送去,并亲眼监督小军读完书才走。久而久之,两人都觉得麻烦。

后来的方式改成了:王阿姨对小军说「我放到书架上的书你都要看」,然后王阿姨每次发现不错的书都放到书架上,小军则看到书架上有书就拿下来看。

书架就是一个消息队列,王阿姨是生产者,小军是消费者。

这带来的好处有:

1.王阿姨想给小军书的时候,不必问小军什么时候有空,亲手把书交给他了,王阿姨只把书放到书架上就行了。这样王阿姨小军的时间都更自由。

2.王阿姨相信小军的读书自觉和读书能力,不必亲眼观察小军的读书过程,王阿姨只要做一个放书的动作,很节省时间。

3.当明天有另一个爱读书的小伙伴小强加入,王阿姨仍旧只需要把书放到书架上,小军和小强从书架上取书即可(唔,姑且设定成多个人取一本书可以每人取走一本吧,可能是拷贝电子书或复印,暂不考虑版权问题)。

4.书架上的书放在那里,小军阅读速度快就早点看完,阅读速度慢就晚点看完,没关系,比起王阿姨把书递给小军并监督小军读完的方式,小军的压力会小一些。

这就是消息队列的四大好处:

1.解耦

每个成员不必受其他成员影响,可以更独立自主,只通过一个简单的容器来联系。

王阿姨甚至可以不知道从书架上取书的是谁,小军也可以不知道往书架上放书的人是谁,在他们眼里,都只有书架,没有对方。

毫无疑问,与一个简单的容器打交道,比与复杂的人打交道容易一万倍,王阿姨小军可以自由自在地追求各自的人生。

2.提速

王阿姨选择相信「把书放到书架上,别的我不问」,为自己节省了大量时间。

王阿姨很忙,只能抽出五分钟时间,但这时间足够把书放到书架上了。

3.广播

王阿姨只需要劳动一次,就可以让多个孩子有书可读,这大大地节省了她的时间,也让新的孩子的加入成本很低。

4.削峰

假设小军读书很慢,如果采用王阿姨每给一本书都监督小军读完的方式,小军有压力,王阿姨也不耐烦。

反正王阿姨给书的频率也不稳定,如果今明两天连给了五本,之后隔三个月才又给一本,那小军只要在三个月内从书架上陆续取走五本书读完就行了,压力就不那么大了。

当然,使用消息队列也有其成本:

1.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御前两把刀刀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值