
RabbitMQ
文章平均质量分 92
小林想被监督学习
好想找实习的编程小萌新,想找人一起学习,监督我,不在迷茫ヾ(;゚;Д;゚;)ノ゙
展开
-
RabbitMQ 仲裁队列 -- 解决 RabbitMQ 集群数据不同步的问题
什么是 Raft?Raft 是⼀种⽤于管理和维护分布式系统⼀致性的协议,它是⼀种共识算法,旨在实现⾼可⽤性和数据的持久性. Raft 通过在节点间复制数据来保证分布式系统中的⼀致性,即使在节点故障的情况下也能保证数据不会丢失.在分布式系统中,为了消除单点提⾼系统可⽤性,通常会使⽤副本来进⾏容错,但这会带来另⼀个问题,即如何保证多个副本之间的⼀致性?原创 2025-01-23 09:28:50 · 1639 阅读 · 0 评论 -
RabbitMQ 在实际应用时要注意的问题
在应⽤程序中,幂等性就是指对⼀个系统进⾏重复调⽤(相同参数),不论请求多少次,这些请求对系统的影响都是相同的效果.⽐如数据库的 select 操作.不同时间两次查询的结果可能不同,但是这个操作是符合幂等性的.幂等性指的是对资源的影响,⽽不是返回结果.查询操作对数据资源本⾝不会产⽣影响,之所以结果不同,可能是因为两次查询之间有其他操作对资源进⾏了修改.⽐如 i++ 这个操作,就是⾮幂等性的.如果调⽤⽅没有控制好逻辑,⼀次流程重复调⽤好⼏次,结果 就会不同.原创 2025-01-21 17:05:07 · 1293 阅读 · 0 评论 -
RabbitMQ 高级特性
延迟队列是⼀个特殊的队列,消息发送之后,并不⽴即给消费者,⽽是等待特定的时间,才发送给消费者.延迟队列的应⽤场景有很多,⽐如:1.订单在⼗分钟内未⽀付⾃动取消2.⽤户注册成功后,3天后发调查问卷3.⽤户发起退款,24⼩时后商家未处理,则默认同意,⾃动退款但RabbitMQ本⾝并没直接实现延迟队列,通常有两种⽅法:1.TTL+死信队列组合的⽅式2.使⽤官⽅提供的延迟插件实现延迟功能⼆者对比:1.基于死信实现的延迟队列a.优点:1)灵活不需要额外的插件⽀持。原创 2025-01-20 16:05:15 · 1158 阅读 · 0 评论 -
Spring Boot 整合 RabbitMQ(在Spring项目中使用RabbitMQ)
对于 RabbitMQ 开发,Spring 也提供了⼀些便利. Spring 和 RabbitMQ 的官⽅⽂档对此均有介绍下⾯来看如何基于 SpringBoot 进⾏ RabbitMQ 的开发。原创 2024-12-26 10:29:30 · 1750 阅读 · 0 评论 -
RabbitMQ 的7种工作模式
RabbitMQ 的7种工作模式,RabbitMQ的基本使用原创 2024-12-23 16:53:53 · 1851 阅读 · 0 评论 -
RabbitMQ快速入门 - 生产者和消费者的简单实现
例如:如果有⼀个名为 "hello" 的队列,⽣产者可以直接发送消息到 "hello" 队列,⽽消费者可以从 "hello" 队列中接收消息,⽽不需要关⼼交换机的存在.这种模式⾮常适合简单的应⽤场景,其中⽣产者和消费者之间的通信是⼀对⼀的.当⼀个新的 RabbitMQ 节点启动时,它会预声明(declare)⼏个内置的交换机,内置交换机名称是空字符串("").⽣产者发送的消息会根据队列名称直接路由到对应的队列.运⾏之后,队列中就已经有了 hello 这个队列的信息。运⾏程序,我们刚才发送的消息,就收到了。原创 2024-12-13 11:19:22 · 1100 阅读 · 0 评论 -
RabbitMQ 工作流程和 web 界面介绍
界⾯上的导航栏共分 6 部分,这 6 部分分别是什么意思呢,我们先看看 RabbitMQ 的⼯作流程RabbitMQ是⼀个消息中间件,也是⼀个⽣产者消费者模型.它负责接收,存储并转发消息.消息传递的过程类似邮局.当你要发送⼀个邮件时,你把你的邮件放到邮局,邮局接收邮件,并通过邮递员送到收件⼈的⼿上.按照这个逻辑, Producer 就类似邮件发件⼈. Consumer 就是收件⼈, RabbitMQ 就类似于邮局。原创 2024-12-09 17:52:11 · 1305 阅读 · 0 评论