
RabbitMQ
rabbitmq
1加一
这个作者很懒,什么都没留下…
展开
-
【RabbitMQ】如何进行消息可靠投递【下篇】
说明上一篇文章里,我们了解了如何保证消息被可靠投递到RabbitMQ的交换机中,但还有一些不完美的地方,试想一下,如果向RabbitMQ服务器发送一条消息,服务器确实也接收到了这条消息,于是给你返回了ACK确认消息,但服务器拿到这条消息一看,找不到路由它的队列,于是就把它丢进了垃圾桶,emmm,我猜应该属于可回收垃圾。如何让消息可靠投递到队列如果你对上面的描述还不是很清楚,那我再用代码来说明一次。在仅开启了生产者确认机制的情况下,交换机接收到消息后,会直接给消息生产者发送确认消息,如果发现该消息不转载 2020-06-20 11:44:28 · 326 阅读 · 0 评论 -
【RabbitMQ】如何进行消息可靠投递【上篇】
一、说明先来说明一个概念,什么是可靠投递呢?在RabbitMQ中,一个消息从生产者发送到RabbitMQ服务器,需要经历这么几个步骤:生产者准备好需要投递的消息。生产者与RabbitMQ服务器建立连接。生产者发送消息。RabbitMQ服务器接收到消息,并将其路由到指定队列。RabbitMQ服务器发起回调,告知生产者消息发送成功。所谓可靠投递,就是确保消息能够百分百从生产者发送到服务器。为了避免争议,补充说明一下,如果没有设置Mandatory参数,是不需要先路由消息才发起回调的,服务器转载 2020-06-20 11:28:24 · 222 阅读 · 0 评论 -
【RabbitMQ】一文带你搞定RabbitMQ延迟队列
一、说明在上一篇中,介绍了RabbitMQ中的死信队列是什么,何时使用以及如何使用RabbitMQ的死信队列。相信通过上一篇的学习,对于死信队列已经有了更多的了解,这一篇的内容也跟死信队列息息相关,如果你还不了解死信队列,那么建议你先进行上一篇文章的阅读。这一篇里,我们将继续介绍RabbitMQ的高级特性,通过本篇的学习,你将收获:什么是延时队列延时队列使用场景RabbitMQ中的TTL如何利用RabbitMQ来实现延时队列二、 本文大纲:以下是本文大纲:本文阅读前,需要对Rabbi转载 2020-06-20 11:03:48 · 270 阅读 · 1 评论 -
【RabbitMQ】一文带你搞定RabbitMQ死信队列
一、说明RabbitMQ是流行的开源消息队列系统,使用erlang语言开发,由于其社区活跃度高,维护更新较快,性能稳定,深得很多企业的欢心(当然,也包括我现在所在公司【手动滑稽】)。为了保证订单业务的消息数据不丢失,需要使用到RabbitMQ的死信队列机制,当消息消费发生异常时,将消息投入死信队列中。但由于对死信队列的概念及配置不熟悉,导致曾一度陷入百度的汪洋大海,无法自拔,很多文章都看起来可行,但是实际上却并不能帮我解决实际问题。最终,在官网文档中找到了我想要的答案,通过官网文档的学习,才发现对于死信转载 2020-06-20 10:28:32 · 917 阅读 · 0 评论 -
RabbitMQ学习——交换机(Exchange)
RabbitMQ中的交换机有四种类型,分为:Direct Exchange(直连交换机)Fanout Exchange(扇型交换机)Topic Exchange(主题交换机)Headers Exchange(头交换机)我们知道在RabbitMQ工作流程当中,当我们要使用时需要指定Exchange和Queue才能传递消息,接下来我们便介绍一下各个交换机的特点,然后通过建立一个简单的SpringBoot例子来讲解各个交换机类型的用法,在开始例子前,我们先来说一说各个交换机的特点。一、Rabbit转载 2020-06-09 21:56:30 · 600 阅读 · 0 评论 -
RabbitMQ——AMQP协议
本篇博文将会对RabbitMQ的基本知识进行介绍。主要包括以下几点的知识介绍:AMQP协议介绍RabbitMQ中常用的基本术语RabbitMQ的工作流程介绍RabbitMQ是消息传输的中间者,可以把它当做是一个消息代理,你把消息传送给它,它再把消息发送给具体的接收人。这就像是邮局一样,你把邮件放入邮箱当中,邮件员会把邮件发送给你的收件人。不同的是RabbitMQ是接受,存储和转发二进制数据块——消息。一、 AMQP协议RabbitMQ是Advanced Message Queuing Pr转载 2020-06-09 21:17:06 · 2408 阅读 · 0 评论 -
RabbitMQ实战
1.什么是RabbitMQRabbitMQ是一个免费的,开源的,可扩展的消息队列解决方案。本质是一个消息代理,可以理解AMQP(高级消息队列协议),但也可以与其他流行的消息解决方案一起使用。它具有高可用性,容错性和可扩展性。它是一个中间件层,使您的应用程序中的不同服务可以彼此通信,而不必担心消息丢失。本质是使不同的进程或程序进行解耦。2.RabbitMQ环境搭建参考:https://www.cnblogs.com/saryli/p/9729591.html3.学习5种队列3.1创建Rabbit原创 2020-06-08 08:59:59 · 657 阅读 · 0 评论