摘要:
登录RabbitMQ控制台提示不是私密连接 将启动的时候的赋权操作再执行一遍 rabbitmqctl add_user root rabbitmqctl set_permissions -p / root ".*" ".*" ".*" rabbitmqctl set_user_tags root a 阅读全文
posted @ 2022-10-04 23:37
彼岸舞
阅读(163)
评论(0)
推荐(0)
摘要:
RabbitMQ延迟队列插件 下载 官网 https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases 我用的是3.10.7的RabbitMQ, 但是官网没有这么新版本的, 只好下载3.10.2得了 安装 # 进入plu 阅读全文
posted @ 2022-10-04 23:37
彼岸舞
阅读(196)
评论(0)
推荐(0)
摘要:
SpringBoot整合RabbitMQ 整合就直接使用单机版的了, 一直开着5个虚拟机, 我电脑不太行 新建SpringBoot工程 你已经是一个长大的IDEA了, 要学会自己新建工程, 然后IDEA自己创建了rabbitmq-consumer和rabbitmq-producer工程 添加依赖 < 阅读全文
posted @ 2022-10-04 23:35
彼岸舞
阅读(89)
评论(0)
推荐(0)
摘要:
消息一致性问题 在使用rabbitmq中,消息的一致性是非常重要的一个话题。在数据一致性方面,发送者发送消息出来,在数据一致性的要求下,我们通常认为必须达到以下条件 broker持久化消息 publisher知道消息已经成功持久化 首先,我们可以采用事务来解决此问题。每个消息都必须经历以上两个步骤, 阅读全文
posted @ 2022-10-04 23:33
彼岸舞
阅读(190)
评论(0)
推荐(0)
摘要:
集群架构 虚拟机规划 IP hostname 节点说明 端口 控制台地址 192.168.247.150 rabbitmq.master rabbitmq master 5672 http://192.168.247.150:15672 192.168.247.151 rabbitmq.s.o ra 阅读全文
posted @ 2022-10-04 23:32
彼岸舞
阅读(615)
评论(0)
推荐(2)
摘要:
死信队列 死信队列: DLX, Dead-Letter-Exchange 利用DLX, 当消息在一个队列中变成死信(dead message)之后, 它能被重新publish到另一个Exchange, 这个Exchange就是DLX DLX也是一个正常的Exchange, 和一般的Exchange没 阅读全文
posted @ 2022-10-04 23:22
彼岸舞
阅读(82)
评论(0)
推荐(0)
摘要:
TTL队列/消息 TTL: Time To Live, 生存时间 RabbitMQ支持消息的过期时间, 在消息发送时可以指定 RabbitMQ支持队列的过期时间, 从消息进入队列开始计算, 只要超过了队列的超时时间配置, 那么消息会被自动清除 TTL队列代码实现 消费者 package com.da 阅读全文
posted @ 2022-10-04 23:21
彼岸舞
阅读(85)
评论(0)
推荐(0)
摘要:
消费端的消息ACK与重回队列 消费端的手工ACK和NACK ACK分为自动和手动 消费端进行消费的时候, 如果由于业务异常我们可以进行日志的记录, 然后进行补偿 如果由于服务器宕机等严重问题, 那我们就需要手工进行ACK保障消费端消费成功 消费端的重回队列 消费端重回队列是为了对没有处理成功的消息, 阅读全文
posted @ 2022-10-04 23:19
彼岸舞
阅读(148)
评论(0)
推荐(0)
摘要:
消费端限流 什么是消费端限流 假设一个场景, 首先, 我们RabbitMQ服务器有上万条消息未处理的消息, 我们随机打开一个消费者客户端, 会出现下面情况 巨量的消息瞬间全部推送过来, 但是我们单个客户端无法同时处理这么多数据 RabbitMQ提供了一种Qos(服务质量保证)功能, 即在非自动确认消 阅读全文
posted @ 2022-10-04 23:18
彼岸舞
阅读(77)
评论(0)
推荐(0)
摘要:
Return返回消息 Return消息机制 Return Listener 用于处理一些不可路由的消息 我们的消息生产者,通过指定一个Exchange和RouteKey, 把消息送达到某一个队列中去,然后我们的消费者监听队列,进行消费处理操作 但是在某些情况下, 我们在发送消息的时候, 当前的Exc 阅读全文
posted @ 2022-10-04 23:15
彼岸舞
阅读(269)
评论(0)
推荐(0)
摘要:
Confirm确认消息 理解Confirm消息确认机制 消息的确认, 是指投递消息后, 如果Broker收到消息, 则会给我们生产者一个应答 生产者进行接收应答用来确定这条消息是否正常的发送到Broker, 这种方式也是消息的可靠性投递的核心保障 Confirm确认消息流程解析 Confirm确认消 阅读全文
posted @ 2022-10-04 23:14
彼岸舞
阅读(92)
评论(0)
推荐(0)
摘要:
幂等性概念详解 幂等性是什么 可以借鉴数据库的乐观锁机制 比如执行一条更新库存的SQL update t_reps set count = count -1 , version = version + 1 where version = 1; MQ最重要的两个特点就是生产端保证可靠性投递和消费端幂等 阅读全文
posted @ 2022-10-04 23:13
彼岸舞
阅读(50)
评论(0)
推荐(0)
摘要:
消息如何保证100%的投递成功 什么是生产端的可靠性投递 保障消息的成功发出 保障MQ节点的成功接收 发送端收到MQ节点(Broker)确认应答 完善的消息进行补偿机制 BAT/TMD互联网大厂的解决方案 消息信息落库, 对消息状态进行打标 存入本地消息表 打印日志记录 将消息发送到MQ 接收MQ的 阅读全文
posted @ 2022-10-04 23:10
彼岸舞
阅读(51)
评论(0)
推荐(0)
摘要:
Binding 绑定关系 Exchange和Exchange, Queue之间的连接关系 Binding中可以包含RouteKey或者参数 Queue 消息队列, 实际存储消息数据 Durability: 是否持久化, Durable: 是, Transient: 否 Auto Delete: 如果 阅读全文
posted @ 2022-10-04 23:09
彼岸舞
阅读(52)
评论(0)
推荐(0)
摘要:
Fanout Exchange 简介 不处理路由键, 只需要简单的将队列绑定到交换机上 发送到交换机的消息都会被转发到与该交换机绑定的所有队列上 Fanout交换机转发消息是最快的 代码实现 消费者1 package com.dance.redis.mq.rabbit.fanout; import 阅读全文
posted @ 2022-10-04 23:08
彼岸舞
阅读(44)
评论(0)
推荐(0)
摘要:
Topic Exchange 简介 所有发送到Topic Exchange的消息被转发到所有关心RouteKey中指定Topic的Queue上 Exchange将RouteKey和某Topic进行模糊匹配, 此时队列需要绑定一个Topic 可以使用通配符进行模糊匹配 #: 匹配一个或多个词 *: 匹 阅读全文
posted @ 2022-10-04 23:07
彼岸舞
阅读(59)
评论(0)
推荐(0)
摘要:
Direct Exchange 简介 所有发送到direct exchange 的消息被转发到Routekey中指定的Queue 注意: Direct模式可以使用RabbitMQ自带的Exchange(default exchange), 所以不需要将Exchange进行任何Binding操作, 消 阅读全文
posted @ 2022-10-04 23:05
彼岸舞
阅读(59)
评论(0)
推荐(0)
摘要:
Exchange 流程图 接收消息, 并根据路由键转发消息所绑定的队列 Exchange属性 属性 含义 name 交换机名称 type 交换机类型[ direct | topic | fanout | headers ] durability 是否需要持久化[ true | false ] aut 阅读全文
posted @ 2022-10-04 23:03
彼岸舞
阅读(52)
评论(0)
推荐(0)
摘要:
MQ控制台简单操作 建立Exchange 新建Exchange成功 新建Queue 新建Queue成功 建立Exchange与Queue的关系 建立关系成功 路由键: 就是指发送到Exchange的消息, 通过路由键的匹配规则, 分发到指定的Queue 样例: test.* 说明: 代表该消息的发送 阅读全文
posted @ 2022-10-04 23:02
彼岸舞
阅读(309)
评论(0)
推荐(0)
摘要:
RabbitMQ安装与入门 安装与启动 我实在是找不到这么老的版本了, 直接用最新版本的, 按照道理来说, 新版本是兼容老版本的 官网地址 https://www.rabbitmq.com/ Erlang安装 下载 https://github.com/erlang/otp/releases/dow 阅读全文
posted @ 2022-10-04 22:59
彼岸舞
阅读(219)
评论(0)
推荐(0)
摘要:
核心概念 RabbitMQ简介 RabbitMQ是一个开源的消息代理和队列服务器, 用来通过普通协议在完全不同的应用之间共享数据, RabbitMQ是使用Erlang语言来编写的, 并且RabbitMQ是基于AMQP协议的 AMQP协议 协议简介 全称: Advanced Message Queui 阅读全文
posted @ 2022-10-04 22:54
彼岸舞
阅读(61)
评论(0)
推荐(0)
摘要:
RabbitMQ特性原理与集群架构解析 RabbitMQ四种集群架构 主备模式 M-S 远程模式 异地多活[了解] 镜像模式 多活模式 异地多活 主备模式 warren(兔子窝),一个主、备方案(主节点如果挂掉,从节点提供服务) 主备模式-HaProxy配置 listen rabbitmq_clus 阅读全文
posted @ 2022-10-04 22:52
彼岸舞
阅读(130)
评论(0)
推荐(0)
摘要:
业界主流的分布式消息队列(MQ)与技术选型 MQ的应用场景 服务解耦 削峰填谷 异步化缓冲 MQ的应用思考点 业务 生产端的可靠性投递 消费端的幂等性 MQ MQ高可用 低延时 可靠性(副本) 堆积能力 可扩展性 业界主流的MQ对比 ActiveMQ RabbitMQ RocketMQ Kafka 阅读全文
posted @ 2022-10-04 22:51
彼岸舞
阅读(137)
评论(0)
推荐(0)
摘要:
第三方云存储解决方案 FastDFS 虽然可以水平扩容, 但是运维的复杂度会提高 开发复杂(并不是指上传) 图片增加水印, 人脸识别 视屏文件的后期处理 阿里云OSS对象存储 SDK使用简单 提供强大的文件处理功能 没有运维成本 图形化管理控制台 CDN加速 官网 https://www.aliyu 阅读全文
posted @ 2022-10-04 22:49
彼岸舞
阅读(41)
评论(0)
推荐(0)
摘要:
SpringBoot 整合 FastDFS 添加POM依赖 <dependency> <groupId>com.github.tobato</groupId> <artifactId>fastdfs-client</artifactId> <version>1.26.7</version> </de 阅读全文
posted @ 2022-10-04 22:48
彼岸舞
阅读(91)
评论(0)
推荐(0)
摘要:
配置Nginx FastDFS实现文件服务器 在storage上安装 cd /home/software/FASTDFS/ tar -zxvf fastdfs-nginx-module-1.22.tar.gz cd fastdfs-nginx-module-1.22/src/ vi config 修 阅读全文
posted @ 2022-10-04 22:47
彼岸舞
阅读(83)
评论(0)
推荐(0)
摘要:
搭建fastdfs文件服务器 资源准备 centos7 libfastcommon 公共函数包 FastDFS 本体 fastdfs-nginx-module 与Nginx的关联模块 nginx 1.15.4 官方文档 https://github.com/happyfish100/fastdfs/ 阅读全文
posted @ 2022-10-04 22:44
彼岸舞
阅读(41)
评论(0)
推荐(0)
摘要:
分布式文件服务器-FastDFS 什么是FastDFS FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。 FastDFS为互联 阅读全文
posted @ 2022-10-04 22:39
彼岸舞
阅读(169)
评论(0)
推荐(0)
摘要:
目前文件上传的问题 单向存储 不支持集群 文件数据冗余(高可用概念) 可扩展差 因为单向存储文件, 会被Nginx轮询, 导致上传到一台Tomcat上, 会导致后续如果该请求没有被轮询到指定的Tomcat, 就会无法访问该文件, 导致访问失败, 并且该文件应为只存储在Tomcat一中, 一旦该节点宕 阅读全文
posted @ 2022-10-04 22:38
彼岸舞
阅读(31)
评论(0)
推荐(0)

浙公网安备 33010602011771号