rabbitMQ
周星猩
未知
展开
-
RabbitMQ之消息确认机制(事务+Confirm)
https://honeypps.com/mq/rabbitmq-message-confirm-strategy/原创 2020-12-13 18:40:32 · 182 阅读 · 0 评论 -
RabbitMQ排他性队列
如果你想创建一个只有自己可见的队列,即不允许其它用户访问,RabbitMQ允许你将一个Queue声明成为排他性的(Exclusive Queue)。该队列的特点是:只对首次声明它的连接(Connection)可见。 会在其连接断开的时候自动删除。对于第一点,首先是强调首次声明,因为另外一个连接无法声明一个同样的排他性队列;其次是只区别连接(Connection)而不是通道(Channel),从同一个连接创建的不同的通道可以同时访问某一个排他性的队列。这里说的连接是指一个AMQPConnectio原创 2020-06-13 22:21:18 · 2648 阅读 · 0 评论 -
RabbitMQ BasicProperties
简介当使用RabbitMQ发布消息时,消息又AMQP规范中的三个低层帧类型组成:Basic.publish方法帧; 内容头帧; 消息体帧;这三种帧类型按顺序一起工作,以便消息传递时完好无损。其中,内容头帧中的消息属性是一种预定义的值,这些值通过设置Basic.Properties数据结构进行指定:content-type属性:让消费者知道如何解释消息体; content-encoding属性:指示消息体使用某种特殊的方式进行压缩或编码; message-id和correlati转载 2020-06-07 09:07:09 · 1852 阅读 · 0 评论 -
RabbitMQ 消息确认
正常情况下,如果消息经过交换器进入队列就可以完成消息的持久化,但如果消息在没有到达broker之前出现意外,那就造成消息丢失,有没有办法可以解决这个问题?RabbitMQ有两种方式来解决这个问题:一、事务使用事务的实现主要是对信道(Channel)的设置,主要的方法有三个:channel.txSelect()声明事务模式;channel.txComment()提交事务;channel.txRollback()回滚事务;// 创建连接ConnectionFactory facto.原创 2020-06-05 23:10:20 · 207 阅读 · 0 评论 -
mq
批量确认:一个消费者和rabbitmq服务器建立连接会创建一个channel ,rabbitmq每发向这个channel 发送消息,deliveryTag就会+1 ,从1开始,deliveryTag就是消息的编号 1、2、3……。deliveryTag交付标记的作用域是每个信道,所以必须在接收消息的信道上进行确认。首先发10条消息import com.rabbitmq.client.*;public class MyProducer { private final static .原创 2020-05-30 23:38:01 · 192 阅读 · 0 评论 -
Spring RabbitMQ 源码分析
目录一、知识点1、RabbitListenerEndpoint:2、RabbitListenerContainerFactory二、开始1、HandlerMethod2、ChannelAwareMessageListener3、SimpleMessageListenerContainer4、RabbitListenerAnnotationBeanPostP...原创 2019-06-29 23:40:13 · 1326 阅读 · 1 评论 -
rabbitmq channel参数详解
rabbitmq channel参数详解1、Channel 1.1 channel.exchangeDeclare():type:有direct、fanout、topic三种durable:true、false true:服务器重启会保留下来Exchange。警告:仅设置此选项,不代表消息持久化。即不保证重启后消息还在。原文:true if we are declaring a ...转载 2019-06-27 15:35:23 · 2141 阅读 · 0 评论 -
Spring AMQP
目录Message Exchange Queue Binding ConnectionFactory Routing Connection Factory AmqpTemplate Sending messages Receiving messages Asynchronous Consumer异步接受消息 MessageListener异步接收消息,MessageLis...转载 2019-06-24 13:37:17 · 279 阅读 · 0 评论 -
九、rabbitMQ 四种类型交换器 Fanout,Direct,Topic和 headers
RabbitMQ服务器会根据路由键将消息从交换器路由到队列中,如何处理投递到多个队列的情况?这里不同类型的交换器起到了重要的作用。分别是fanout,direct,topic,每一种类型实现了不同的路由算法。Fanout Exchange不处理路由键。你只需要简单的将队列绑定到交换机上。一个发送到交换机的消息都会被转发到与该交换机绑定的所有队列上。很像子网广播,每台子网内的主机...转载 2019-04-02 20:21:31 · 1330 阅读 · 0 评论 -
Linux(centos7)安装 RabbitMQ
一、安装1、首先需要安装erlang,参考:http://fedoraproject.org/wiki/EPEL/FAQ#howtouseyum install erlang安装过程中会有提示,一路输入“y”即可。2、安装RabbitMQ:先下载rpm: wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6....转载 2019-03-18 23:04:58 · 133 阅读 · 0 评论 -
四、rabbitMQ Work Queues
在前面的已经提到了一对一的情况;现在一个生产者与多个消费者的情况(Work Queues)。Work Queues的示意图如下:RabbitMQ服务器会将队列中的消息分给消费者。其分发方式是:c1一个、c2一个、然后再c1一个、c2一个、……,在rabbitMQ上分配好后,会将分配的消息包一起返回给消费者,消费者对消息包中的每一条消息都返回却信息ack,这要就会带来一些问...原创 2017-07-14 11:20:01 · 573 阅读 · 0 评论 -
二、rabbitMQ大体框架简介
框架图RabbitMQ Server: 也叫broker server,它不是运送食物的卡车,而是一种传输服务。Client A & B: 也叫Producer,数据的发送方。Client 1,2,3: 也叫Consumer,数据的接收方。 对于一个数据从Producer到Consumer的正确传递,还有三个概念需要明确:exchanges, q...原创 2017-07-13 15:16:49 · 646 阅读 · 0 评论 -
八、rabbitMQ RPC
前面的章节我们学习的都是生产者发送数据,消费者处理数据,但是数处理的结果生产者并知道。现在是大数据是时代,我们希望a机器收集到数据后交个b机器去运算,这种运算是十分耗时的,b机器运算后把结果再给a机器。这种模式我们称为:RPC(Remote Procedure Call Protocol)远程过程调用。a机器将数据放到指定的队列中,b机器从队列中获取数据,数据处理完成后将数据放入a原创 2017-07-15 16:11:42 · 237 阅读 · 0 评论 -
七、rabbitMQ Topics
上一节我们学习了direct exchange ,这种exchange叫交换数据的时候是精确匹配routing_key.这一节我们将学习topics exchange,他可以做到模糊匹配。* 能够代替一个单词。#代表0个或多个单词。实例:每个动物都有三个属性 速度、颜色、种类,三种属性使用@符合进行分隔.quick@orange@rabbitlazy@orange@el原创 2017-07-15 10:40:12 · 190 阅读 · 0 评论 -
五、rabbitMQ fanout exchange Publish/Subscribe
前面的我们的消息只发到一条队列中,最终被一个消费者处理。现在我们的的需求是一条消息能发到多个队列里,从而被多个消费者处理,这种模型称为“发布/订阅”。rabbitMQ中其实生产者不是将信息直接送入队列,而是叫给了exchange 由exchange完成信息的交换转发。交换是一件很简单的事。一方面,它接收来自生产者的信息,另一边则推他们排队。Exchange必须知道如何处理接收到的消息。原创 2017-07-14 15:14:58 · 356 阅读 · 0 评论 -
三、rabbitMQ helloWorld入门程序
maven依赖 com.rabbitmq amqp-client 4.1.1 org.springframework.amqp spring-rabbit 1.7.3.RELEASE 1、开启rabbitMQ2、生产者发送“Hello World”到“he原创 2017-07-13 15:33:59 · 224 阅读 · 0 评论 -
一、rabbitMQ安装
rabbitMQ就像邮局。生产者将产生的信息送到邮局,消费者从邮局取出信息。在学习rabbitMQ时首先应该建立一个邮局。rabbitMQ就是一个服务程序,我们可以在期官网下载http://www.rabbitmq.com。在安装的时后会提示你下载安装relang,我们下载后并安装。两个软件都安装成功后。在cmd 的命令窗口,可以完成所有的RabbitMQ的服务配置,不过命令太多记原创 2017-07-13 14:10:09 · 244 阅读 · 0 评论