RabbitMQ实战教程
文章平均质量分 71
makesailing
这个作者很懒,什么都没留下…
展开
-
RabbitMQ如何保证顺序性
在不使用任何Rabbitmq 的高级特性,也没有消息丢失、网络故障之类异常的情况下发生,并且只有一个消费者的情况下,也只有一个生产者的情况下可以保证消息的顺序性。如果有多少生产者同时发送消息,无法确定消息到达Broker的前后顺序,也就无法验证消息的顺序性,因为每一次消息的发送都是在各自的线程中进行的。举个例子,不考虑消息重复的情况下,如果生产者发布的消息分别为msg1、msg2、msg3 那么消费者必然也是按照 msg1、msg2、msg3 的顺序来消费的。如果我们不考虑消息到达MQ的顺序。原创 2023-05-21 20:46:36 · 5710 阅读 · 1 评论 -
RabbitMQ实战教程(十二):消息队列的应用场景
这是网上的一篇教程写的很好,不知原作者是谁,没法注明出处,我看的时候也是别人转载的,这里就注明一下那篇转载的地址:http://blog.csdn.net/cws1214/article/details/52922267消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题实现高性能,高可用,可伸缩和最终一致性架构...转载 2018-11-08 16:37:56 · 939 阅读 · 0 评论 -
RabbitMQ实战教程(十一) : 虚拟主机vhost与权限管理
原文出处 : https://blog.csdn.net/vbirdbest/article/details/78702685虚拟主机vhost每一个RabbitMQ服务器都能创建虚拟消息服务器,我们称之为虚拟主机。每一个vhost本质上是一个mini版的RabbitMQ服务器,拥有自己的交换机、队列、绑定等,拥有自己的权限机制。vhost之于Rabbit就像虚拟机之于物理机一样。他们通过...转载 2018-09-26 23:07:27 · 1193 阅读 · 0 评论 -
RabbitMQ实战教程(十) : 消息确认Ack
一:消费者确认消费者确认或者说消费者应答指的是RabbitMQ需要确认消息到底有没有被收到 - 自动应答boolean autoAck = true;channel.basicConsume(QUEUE_NAME, autoAck, consumer);12在订阅消息的时候可以指定应答模式,当自动应答等于true的时候,表示当消费者一收到消息就表示消费者收到了消息,消费者收到了消息就会立...转载 2018-09-26 23:04:52 · 1678 阅读 · 0 评论 -
RabbitMQ实战教程(八) : 队列声明queueDeclare
原文出处 : https://blog.csdn.net/vbirdbest/article/details/78670550简介本节主要讨论队列声明的各个参数queueDeclare(String queue, boolean durable, boolean exclusive, Map<Strin...转载 2018-09-26 23:03:02 · 893 阅读 · 0 评论 -
RabbitMQ实战教程(九) : 消息属性Properties
原文出处 : https://blog.csdn.net/vbirdbest/article/details/78670550简介本节主要讨论队列声明的各个参数queueDeclare(String queue, boolean durable, boolean exclusive, Map&lt;Strin...转载 2018-09-26 22:54:39 · 2819 阅读 · 0 评论 -
RabbitMQ实战教程(七) : 远程过程调用RPC
原文出处 : https://blog.csdn.net/vbirdbest/article/details/78634188简介远程过程调用(RPC): 客户端发送一个请求到远程服务器上,远程服务器接收请求并处理结果,将结果响应给客户端,这个过程被称为远程过程调用。RPC涉及到的基本知识:关于队列:整个过程会设计到两个队列一个是专门保存请求的队列,一般名字被称为rpc_queue,...转载 2018-09-26 22:48:49 · 205 阅读 · 0 评论 -
RabbitMQ实战教程(六) : 首部交换机Headers
原文出处 : https://blog.csdn.net/vbirdbest/article/details/78638988简介首部交换机和扇形交换机都不需要路由键routingKey,交换机时通过Headers头部来将消息映射到队列的,有点像HTTP的Headers,Hash结构中要求携带一个键“x-match”,这个键的Value可以是any或者all,这代表消息携带的Hash是需要...转载 2018-09-26 22:24:18 · 368 阅读 · 0 评论 -
RabbitMQ实战教程(五)-路由模式
1. 路由模式跟订阅模式类似,只不过在订阅模式的基础上加上路由,订阅模式是分发到所有绑定到该交换机的队列,路由模式只分发到绑定在该交换机上面指定的路由键队列.2. Direct 直接交换机直连交换机(Direct Exchange)是一种带路由功能的交换机,它将消息中的Routing Key与该交换机关联的所有Binding中的Routing Key进行比较,如果完全相等将消息发送到B...原创 2018-09-18 11:03:36 · 361 阅读 · 0 评论 -
RabbitMQ实战教程(四)_扇形交换机发布订阅(Publish-Subscribe)
RabbitMQ实战教程(四)_扇形交换机发布订阅(Publish-Subscribe)1. 订阅模式即一个生产者发送消息给多个消费者,且每个消费者都收到一次,也即是一个消息能够被多个消费者消费.发布订阅类似观察者设计模式,一般适用于当接收到某条消息时同时作多种类似的任务处理, 如果用户注册,注册成功需要发送短信、发送邮件到注册邮箱.2. fanout 扇形交换机之前我们直接发送消息到...原创 2018-09-18 11:02:02 · 625 阅读 · 0 评论 -
RabbitMQ实战教程(三) : 工作队列
RabbitMQ实战教程(三) : 工作队列1. 工作队列简单队列不足 : 不支持多个消费者即一个生产者可以对应多个消费者同时消费,相比简单队列支持多消费者 . 因为实际工作中,生产者服务一般都是很简单的业务逻辑处理之后就发送到队列,消费者接收到队列的消息之后,进行复杂的业务逻辑处理,所以一般都是多个消费者进行处理.如是是一个消费者进行处理,那么队列会积压很多消息.工作队列分为两...原创 2018-09-18 11:00:49 · 544 阅读 · 0 评论 -
RabbitMQ实战教程(二) : 简单队列
RabbitMQ实战教程(二) : 简单队列1. 简单队列官方内容参考:http://www.rabbitmq.com/tutorials/tutorial-one-java.html即一处生产者对应一个消费者,一对一的关系,不多个消费者消费2. 代码演示2.1 采用 maven 方式 创建项目首先引入RabbitMQ的Java客户端依赖<dependency> ...原创 2018-09-18 10:57:33 · 372 阅读 · 0 评论 -
RabbitMQ实战教程(一) : 安装及相关概念介绍
RabbitMQ实战教程(一) : 安装及相关概念介绍由于本人只在Windows安装 RabbitMQ 服务 ,其他系统安装暂时没有涉及,如果有需要请自行搜索安装教程…1 . Windows 安装Windows安装需要先安装Erlang,再安装RabbitMQ第一步:安装Erlang OTP,由于RabbitMQ是用Erlang编写的,所以在安装RabbitMQ之前要先安...原创 2018-09-16 22:25:25 · 428 阅读 · 2 评论