随笔分类 - RabbitMQ
about RabbitMQ
RabbitMQ arguments参数设置
摘要:有发布端、消费端、消息路由、消息生命周期和身份认证标识等模块参数的设置。 具体请参考地址:http://www.rabbitmq.com/extensions.html
阅读全文
RabbitMQ 设置队列的过期时间
摘要:设置队列的过期时间非常简单,在声明队列时,设置x-expires参数即可。当队列的生存周期超时后,RabbitMQ server会自动将该队列删除。 代码如下: 参考文献:http://www.rabbitmq.com/ttl.html#queue-ttl
阅读全文
RabbitMQ 设置消息的优先级
摘要:在RabbitMQ中,可以设置消息的优先级,也就相当于在队列中置顶某条消息,让某个消息优先得到处理的功能。 既然是设置消息的优先级,那么就是针对生产者,也就是消息发布端。 设置消息的优先级一共有2个步骤: 1、设置队列的x-max-priority参数; 2、设置消息的Priority参数。 话不多
阅读全文
RabbitMQ 消息应答机制(message acknowledgments)
摘要:消息应答机制是一个很重要的功能,它能保证消息队列中的某个消息是否被成功处理。如果RabbitMQ server收到Consumer端发来的应答信号,就会将Consumer刚才处理的消息删除,并发送下一个消息给Consumer去处理;如果Consumer端没有回发确认消息给RabbitMQ serve
阅读全文
RabbitMQ 均衡调度(公平分发机制)
摘要:均衡调度是针对Consumer来说的。现在有两个Consumer请求同一个队列的消息。RabbitMQ会将序号为奇数的消息发给第一个Consumer,会将序号为偶数的消息发送给第二个Consumer。如果第一个Consumer处理消息的时间需要很久,而第二个Consumer很快就处理完已经收到的消息
阅读全文
RabbitMQ 循环调度
摘要:循环调度是针对Consumer消费者来说的。如果有多个Consumer订阅同一个队列的消息,RabbitMQ会自动按照顺序将消息发送到每一个Consumer手中。 就是这么简单!
阅读全文
RabbitMQ 队列、消息持久化
摘要:RabbitMQ的消息队列的持久化是一个很不错的功能,设置也非常简单。如下代码: 1、设置队列持久化(在声明队列的时候设置) 2、设置消息持久化(发布消息的时候设置)
阅读全文
RabbitMQ Dead Lettering(死信)
摘要:死信,顾名思义,就是死掉的消息,死掉的消息是会被一般的队列丢弃的。如果这些消息很重要,而我们又需要,怎么办?凡事都有一个退路,现在就有一种方法可将这些死信消息存下来,那就是DLX(Dead Letter Exchanges)。DLX是专门用来存储死信消息到指定队列中的一种交换机。需要在声明队列时指定
阅读全文
RabbitMQ 设置消息的TTL(过期时间)
摘要:我们在RabbitMQ中发布消息时,在代码中有两种方法设置某个队列的消息过期时间: 1、针对队列来说,可以使用x-message-ttl参数设置当前队列中所有消息的过期时间,即当前队列中所有的消息过期时间都一样; 2、针对单个消息来说,在发布消息时,可以使用Expiration参数来设置单个消息的过
阅读全文
RabbitMQ fanout类型的Exchange
摘要:就目前来说,Exchange是与消息发送端有关的,因为它可以指定将消息发送到哪个或哪些队列中。 本篇文章介绍的fanout类型就是指定将消息群发到与Exchange绑定的所有队列中。 fanout这个单词,我看好多都翻译为扇出。扇出是个什么鬼?不知火舞拿个扇子出去秀身材?....还是回归正题! 反正
阅读全文
RabbitMQ direct类型的Exchange
摘要:就目前来说,Exchange是与消息发送端有关的,因为它可以指定将消息发送到哪个或哪些队列中。 本篇文章介绍的direct类型就是指定将消息定向发送到哪个队列中。 direct,顾名思义,就是直接的意思。那我就直接开始上代码了! 运行程序后,我们到RabbitMQ的web管理界面去看看。 在浏览器地
阅读全文
RabbitMQ 简单的消息发送与接收
摘要:RabbitMQ是建立在AMQP(Advanced Message Queuing Protocol,高级消息队列协议)基础上的,而AMQP是建立在TCP协议之上的。 因此,RabbitMQ是需要建立TCP连接的。其建立连接的方法如下: TCP连接的频繁创建与销毁是需要很大开销的,因此RabbitM
阅读全文
RabbitMQ 简介
摘要:既然是简介,那就简单介绍几句。 一、RabbitMQ是一个开源的消息中间件,也可以称之为消息队列。其支持集群、事物、高并发、RPC(远程过程调用)、队列持久化、消息持久化、消息循环调度、消息均衡调度、消息回发确认机制、消息过期删除等等功能。算是比较常用的消息队列工具! 二、按照角色来说,可大致分为:
阅读全文