消息队列

  1. 什么是消息队列
  2. 为什么要使用消息队列

什么是消息队列

首先,我们聚焦在队列上。我们都知道队列是一种数据结构,支持先进先出。所以,消息队列就是一种可以储存消息的容器,当我们需要使用消息的时候可以取出消息供自己使用。并且是有顺序的。当生产者按照A, B, C…这样的顺序存入消息队列中,消费者也按照A, B, C…这样的顺序取出来进行消费。
消息队列是分布式中的消息中间件。使用它,主要是为了通过异步处理提高系统性能和削峰、降低系统耦合性。 虽然我们引入消息队列存在这些优点,但当一个系统加入一个新东西时,必然会带来一些问题。例如消费的顺序性,如何保证消息不被重复消费?如何保证消息的可靠性传输(如何处理消息丢失的问题)?…等等问题。所以说使用消息队列也不是十全十美的,使用它也会让系统可用性降低、复杂度提高,另外还需要我们保障一致性等问题。
目前流行的MQ就有RabbitMQ, RocketMQ, Kafka, ActiveMQ。各种MQ都有其对应的使用场景,等下在后面也会一一对比这些消息队列。

为什么要使用消息队列

总体而言,使用消息队列有两点好处。

通过异步处理提高系统性能(削峰、减少响应所需时间);
降低系统耦合性。
(1) 通过异步处理提高系统性能(削峰、减少响应所需时间);
(2) 降低系统耦合性。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以邮件至 chaofa_vip@126.com

文章标题:消息队列

文章字数:435

本文作者:Hechaofa

发布时间:2020-11-20, 19:09:47

最后更新:2020-11-20, 19:03:32

原始链接:https://chaofavip.github.io/2020/11/20/queue/xiaoxi/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录
×

喜欢就点赞,疼爱就打赏