一、RabbitMQ简介 1. 应用场景 (1)任务异步处理 ? 将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。缩短了应用程序的响应时间。 (2)应用程序解耦合 ? MQ相当于一个中介,生产方通过MQ与消费方交互,它将应用程序进行了解耦合。 2. 工作原理 ? 下图是Rab ...
分类:
其他好文 时间:
2020-07-18 22:55:09
阅读次数:
100
什么是消息队列(MQ) 消息是在不同应用间传递的数据。这里的消息可以非常简单,比如只包含字符串,也可以非常复杂,包含多个嵌套的对象。消息队列(Message Queue)简单来说就是一种应用程序间的通讯方式,消息发送后立即返回,然后由消息系统保证消息的可靠性传输,消息生产者只需要把消息发到 MQ 中 ...
分类:
其他好文 时间:
2020-07-18 22:06:33
阅读次数:
69
Docker-compose常用软件部署(mysql、redis、rabbitmq) 废话不多说,下面就直接给出部署文件已经启动脚本,这个会持续更新。以下的部署方式均是单例部署。高可用或者其他部署方案我会单独写相应的文章。 mysql数据库 redis缓存 rabbitmq消息队列 compose- ...
分类:
数据库 时间:
2020-07-18 21:56:39
阅读次数:
84
Rabbitmq的使用四_Java Client方式使用Topic模式 1.官方文档地址:https://www.rabbitmq.com/tutorials/tutorial-five-java.html 2.定义:topic和direct类似,也是将消息发送到RoutingKey和Binding ...
分类:
编程语言 时间:
2020-07-18 20:00:00
阅读次数:
93
前言 某个产品 或者订单,有个有效期 过了有效期要取消 方法一 : 写个脚本,用crontab 定时扫描 改变状态 但是最低只能一分钟 ,不适合 方法二 : 用swoole得毫秒定时器,每秒钟去扫描表 明显占用资源 mysql受不了 方法三 :用rabbitmq延时队列 一开始将其丢入mq 死信队列 ...
分类:
其他好文 时间:
2020-07-18 15:40:48
阅读次数:
65
延迟任务应用场景 场景一:物联网系统经常会遇到向终端下发命令,如果命令一段时间没有应答,就需要设置成超时。 场景二:订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单。 场景三:过1分钟给新注册会员的用户,发送注册邮件等。 php 使用rabbitmq-delayed-message-ex ...
分类:
Web程序 时间:
2020-07-18 15:27:31
阅读次数:
88
RabbitMq教程 Rabbit的window安装:https://www.cnblogs.com/cxxjohnson/p/8734720.html 一.什么是MQ? MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。MQ是消费-生产者模型的一个典型的代 ...
分类:
其他好文 时间:
2020-07-18 00:29:46
阅读次数:
85
我们都知道,微服务之间通过feign传递,在复杂的微服务架构系统中,几乎每一个前端请求都会形成一个复杂的分布式服务调用链路,在每条链路中任何一个依赖服务出现延迟超时或者错误都有可能引起整个请求最后的失败。当业务流程足够复杂时,一个完整的HTTP请求调用链一般会经过多个微服务系统,要通过日志来跟踪一整 ...
分类:
其他好文 时间:
2020-07-16 21:40:19
阅读次数:
68
l HAProxy是什么 HAProxy是一个高性能的开源并且免费的负载均衡软件,可以运行于大部分主流的Linux操作系统上。 HAProxy提供了L4(TCP)和L7(HTTP)两种负载均衡能力,具备丰富的功能。HAProxy的社区非常活跃,版本更新快速, HAProxy性能很高 l HAProx ...
分类:
其他好文 时间:
2020-07-15 23:22:49
阅读次数:
59
普通模式 默认的集群模式,以两个节点(rabbit01、rabbit02)为例来进行说明。对于Queue来说,消息实体只存在于其中一个节点rabbit01(或者rabbit02),rabbit01和rabbit02两个节点仅有相同的元数据,即队列的结构。当消息进入rabbit01节点的Queue后, ...
分类:
其他好文 时间:
2020-07-15 15:35:46
阅读次数:
64