rabbitmq

夏微凉.8 小时前
linux·学习·rabbitmq
【RabbitMQ】RabbitMQ 的概念以及使用RabbitMQ编写生产者消费者代码目录1. RabbitMQ 核心概念1.1生产者和消费者1.2 Connection和Channel1.3 Virtual host
液态不合群8 小时前
分布式·rabbitmq
记一次 RabbitMQ 消费者莫名消失问题的排查某天下午,生产监控告警:消息积压,队列 xxx 消息数超过 100;我第一时间想到的是应用服务是不是停了,但应用服务存活监控又没有告警,但我还是找值班运维同事帮忙确认了下,确认结果是服务的 6 个节点都是存活的,然后我又让运维确认了下队列的消费者情况,结果发现消费者列表中只有 2 个节点的消费者,其他 4 个节点的消费者不见了,所以消息消费不过来,导致了消息积压!
张某布响丸辣9 小时前
分布式·kafka·rabbitmq
Kafka与RabbitMQ:深入理解两者之间的区别在现代分布式系统架构中,消息队列作为异步通信的重要手段,扮演着至关重要的角色。Apache Kafka和RabbitMQ作为两大主流消息队列系统,各自具有独特的设计理念和优势。本文将深入探讨Kafka与RabbitMQ之间的主要区别,帮助读者在选择时做出更明智的决策。
lucky.麒麟9 小时前
docker·容器·rabbitmq
Docker搭建 RabbitMQ 最新版这里需要下载带管理页面的镜像:docker pull rabbitmq:4-management如果是 arm 芯片下载 docker pull arm64v8/rabbitmq:4-management
编程卡拉米14 小时前
分布式·rabbitmq
RabbitMQ——消息的可靠性处理在业务的开发中,我们通常将业务的非核心业务交给MQ来处理,比如支付,在支付过后,我们需要扣减余额,修改支付单状态,修改订单状态,发送短信提醒用户,给用户增加积分等等(可能真是场景并非这么简单,这里举个例子),在这套业务中,修改订单状态,发送短信提醒用户,给用户增加积分这三个业务在特定场景下并非是核心业务,所以把他放在MQ消息队列中进行处理,在非核心业务执行的时候,可能出现多个问题,导致数据不一致,比如用户买了东西,发现自己的钱已经扣了,但是页面显示的还是未支付状态,这种情况就非常严重了,造成这个现象的原因
CHHC188014 小时前
mqtt·网关·rabbitmq·消息保存
mqtt网关数据接入rabbitmq,缓存离线数据,实现消息保留应用场景:网关将设备数据发布至mqtt服务器后,数采程序因为重启或者升级等原因,未能接到到离线的订阅消息,利用rabbitmq-mqtt可将离线数据缓存,待上线后接收
loss_rose77714 小时前
分布式·rabbitmq
【RabbitMQ】RabbitMq消息丢失、重复消费以及消费顺序性的解决方案RabbitMq消息丢失主要是有三种情况:生产者消息未发送到服务端、服务端消息没有做持久化导致丢失、消费端未收到消息。解决方案依次如下:
小码哥呀16 小时前
分布式·rabbitmq
RabbitMQ简介RabbitMQ是一个广泛使用的消息服务器,采用Erlang语言编写,是一种开源的实现 AMQP(高级消息队列协议)的消息中间件; RabbitMQ最初起源于金融系统,它的性能及稳定性都非常出色; AMQP协议(http://www.amqp.org),即 Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计; 我们学的协议有哪些:(http、ftp)
程序员-珍18 小时前
spring boot·rabbitmq·java-rabbitmq
SpringBoot 整合 RabbitMQ 一直报错分析问题: 现在情况,使用了spring-stater-amqp。添加了依赖,使用RabbitListenner编写消费者。启动项目就报错。 Failed to declare queue: yoj.queue1 其中一直提到了定义队列 yoj.queue1失败 所以,应该查看队列是否存在,查看以后,发现确实不存在。 创建队列以后,重启项目,成功运行。 总结: RabbitMQ显然需要创建队列或者创建队列、交换机、绑定关系以后才能使用,我直接定义了这个队列的监听对象,和调用逻辑而没有编写队列定义或其他定义
月夜星辉雪1 天前
分布式·rabbitmq
【RabbitMQ 项目】服务端:信道模块信道是在用户层的一个逻辑概念,是比 TCP 连接更加细粒度的通信通道,客户端想要和服务端通信,必须先创建一个信道,通过信道来请求各种各样的服务。服务端在收到客户端创建信道的请求后,也要在本地创建一个相应的信道,来给客户端提供对应的服务。 即客户端通过信道给用户提供服务,服务端通过信道给客户端提供服务,信道就是提供服务的窗口。
。。。。。。。。~1 天前
分布式·rabbitmq
RabbitMQ高级特性-发送方确认对于发送方发送消息到RabbitMQ的可靠性机制引入:在持久化的消息正确存⼊RabbitMQ之后,还需要有⼀段时间(虽然很短,但是不可忽视)才能存⼊磁盘中.RabbitMQ并不会为每条消息都进⾏同步存盘(调⽤内核的fsync⽅法)的处理, 可能仅仅保存到操作系统缓存之中⽽不是物理磁盘之中. 如果在这段时间内RabbitMQ服务节点发⽣了宕机、重启等异常情况, 消息保存还没来得及落盘, 那么这些消息将会丢失
不能再留遗憾了1 天前
分布式·rabbitmq·ruby
RabbitMQ 高级特性——重试机制前面我们学习了 RabbitMQ 保证消息传递可靠性的机制——消息确认、持久化和发送发确认,那么对于消息确认和发送方确认,如果接收方没有收到消息,那么这时该怎么做呢?这就要提到 RabbitMQ 的重试机制了,当发送方发送的消息没有成功到达接收方,那么发送方就会使用重试机制来向接收方重新发送消息,如果接收方因为程序逻辑错误引起的,那么不管发送方重新发送多少次,接收方都不能正确的处理这个消息,那么发送方也不能无休止的向接收方发送消息,当发送的次数超过某个数量的时候,那么这个消息就会被标记为死信,然后被处理掉
月夜星辉雪1 天前
分布式·rabbitmq
【RabbitMQ 项目】服务端:消费者管理模块在服务端的视角,每收到一个订阅队列的请求,就多了一个消费者。在消费客户端同样如此,每订阅一个队列,就多了一个消费者。所以这里的消费者指的不是消费客户端,而是可以从指定队列中取走消息的角色。
。。。。。。。。~1 天前
分布式·中间件·rabbitmq
RabbitMQ应用RabbitMQ 共提供了7种⼯作模式, 进⾏消息传递一、七种模式的概述1、Simple(简单模式)P:生产者,就是发送消息的程序
。。。。。。。。~1 天前
分布式·rabbitmq
RabbitMQ的高级特性-消息确认机制对于RabbitMQ发送消息到消费端的可靠性保障引入:发送者发送消息后,到达消费端之后会出现一下两种情况:
月夜星辉雪2 天前
c++·分布式·rabbitmq
【RabbitMQ 项目】客户端:消费者模块和服务端的消费者实现方式一模一样,只不过服务端的消费者的回调函数是把消息封装成响应并发送,固定都是这个动作,而客户端消费者回调是用来处理消息,是用户自己设置的。
月夜星辉雪2 天前
服务器·分布式·rabbitmq
【RabbitMQ 项目】服务端:服务器模块成员变量:BrokerServer.hpp:
月夜星辉雪2 天前
分布式·rabbitmq
【RabbitMQ 项目】客户端:连接模块客户端有两种,生产客户端,消费客户端,其实连接模块就是传统意义上的的客户端,生产客户端,消费客户端都是用它来搭建的,只不过连接模块提供了很多接口。消费客户端只会使用其中的一部分,比如消费客户端会发布消息;生产客户端也只使用一部分,比如不可能订阅消息
Lvan的前端笔记2 天前
java·rabbitmq·java-rabbitmq
java:brew安装rabbitmq以及简单示例可以看我之前写的这篇 消息队列MQRabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。
小码哥呀2 天前
分布式·rabbitmq·ruby
RabbitMQ下载安装运行环境搭建RabbitMQ是使用Erlang语言开发的,所以要先下载安装Erlang。下载时一定要注意版本兼容性 版本兼容说明地址:https://www.rabbitmq.com/which-erlang.html