• 2024-07-02RabbitMQ数据隔离
    1.用户管理点击Admin选项卡,首先会看到RabbitMQ控制台的用户管理界面:这里的用户都是RabbitMQ的管理或运维人员。目前只有安装RabbitMQ时添加的itheima这个用户。仔细观察用户表格中的字段,如下:Name:itheima,也就是用户名Tags:administrator,说明itheima用户是超级管理员,拥有所有
  • 2024-07-02在C#中使用RabbitMQ做个简单的发送邮件小项目
    在C#中使用RabbitMQ做个简单的发送邮件小项目前言好久没有做项目了,这次做一个发送邮件的小项目。发邮件是一个比较耗时的操作,之前在我的个人博客里面回复评论和友链申请是会通过发送邮件来通知对方的,不过当时只是简单的进行了异步操作。那么这次来使用RabbitMQ去统一发送邮件,我
  • 2024-07-01消息队列面试题----基础篇
    ##1、为什么要用MQ?MQ有哪些使用场景?###什么是消息队列消息队列是一种异步的通信方式,用于在分布式系统中管理消息传递。消息队列采用了生产者-消费者模型,生产者将消息发送到队列中,而消费者则从队列中接收消息。###为什么要使用消息队列其实就是问问你消息队列都有哪些使
  • 2024-07-01RabbitMQ延时任务通过死信队列实现(golang)
    最近在一个项目中,需要实现在用户上传图片30分钟后,删除对应图片,以保证用户隐私。我们使用rabbitmq来实现。基于rabbitmq实现延时任务有两种方式,一种为队列ttl+死信exchange,另一种为安装插件(https://github.com/rabbitmq/rabbitmq-delayed-message-exchange)。其中安装
  • 2024-07-01rabbitmq 启动报错 unknown exchange type ‘x-delayed-message‘
    产生问题的原因rabbitmq中默认只有四中交换机类型:headers、direct、fanout、topic。所以我们需要自己安装一个x-delayed-message类型的交换机x-delayed-message的安装1、下载插件点击,下载rabbitmq_delayed_message_exchange-3.8.0.ez。2、将下载的包放到/RABBIT_HOME/plugin
  • 2024-07-01Centos7 安装Rabbitmq3.9.11
    安装erlang安装依赖包yum-yinstallgccglibc-develmakencurses-developenssl-develxmltoperlwgetgtk2-develbinutils-devel下载wgethttps://github.com/erlang/otp/releases/download/OTP-24.1.7/otp_src_24.1.7.tar.gz解压tar-zxvfotp_src_24.1.7.tar
  • 2024-07-01RabbitMQ如何备份与恢复数据
    阅读目录一、场景二、元数据备份和还原1、操作2、导出数据 3、导入数据4、验证数据 三、消息数据备份和还原1、确定数据目录2、为避免数据的一致性,需先停掉服务3、备份数据目录 4、还原数据5、修改数据目录权限6、启动B服务器上rabbitmq服务7、验证消息数
  • 2024-07-01消息队列选型之 Kafka vs RabbitMQ
    在面对众多的消息队列时,我们往往会陷入选择的困境:“消息队列那么多,该怎么选啊?Kafka和RabbitMQ比较好用,用哪个更好呢?”想必大家也曾有过类似的疑问。对此本文将在接下来的内容中以Kafka和RabbitMQ为例分享消息队列选型的一些经验。一、什么是消息队列消息队列即Messag
  • 2024-06-23Spring Batch
    项目是做历史表的Migration锁定一定数量的历史表A,B,C,每张历史表在配置表里有一张记录,包括需要distinct的关键字段,包括分区大小,core大小(逻辑分区)以及一个参数(select_clause,历史表的条件比如时间)举例子,数据库配置表里 历史表A 的distinct字段country_code到60w条数据,分
  • 2024-06-21rabbitMQ实战生产者-交换机-队列-消费者细谈
     生产者rabbitmq的配置创建交换机,创建queue,绑定交换机的routingkey到queue一,默认的exchange列表 二,将exchange的routingkey绑定到queue 三,生产端关心消息将发放哪个交换机,哪个routingkey,也可以用通配符(如calc.*,calc.#)匹配相应的routingkey mq服务匹配exchange,rout
  • 2024-06-20【Azure Event Hub】原生应用中使用RabbitMQ,是否可以不改动代码的情况下直接转换为使用Event Hub呢?
    问题描述原生应用中使用RabbitMQ,是否可以不改动代码的情况下直接转换为使用AzureEventHub呢? 问题解答RabbitMQ使用的协议是AMQP0-9-1,而AzureEventHub或ServiceBus使用的是AMQP1.0,所以无法直接复用之前的代码。需要使用AzureEventHubSDK来生产/消费消息。Which
  • 2024-06-20RabbitMQ实战宝典:从新手到专家的全面探索
    前言在当今分布式系统架构中,消息队列已成为不可或缺的一部分,而RabbitMQ作为其中的佼佼者,凭借其强大的功能和灵活性,广泛应用于各种规模的应用场景中。本文将带你从基础概念出发,深入探讨RabbitMQ的核心特性,通过实战案例与Java代码示例,引领你踏上成为RabbitMQ大师的旅程。第
  • 2024-06-19rabbitmq实现手动确认
    实现逻辑是:spring容器启动时创建监听容器工厂javaBean,工厂的acknowlegemodel属性设置为手动确认,后续通过该容器产生的所有代理对象都需要手动确认,然后通过对象的反射来调用process方法来完成业务逻辑。但是这里存在一个问题那就是所有通过该让容器产生的监听器都变成了手动确认
  • 2024-06-17消息队列
    为什么使用消息队列消息中间件(MessageMiddleware)是分布式系统中重要的组件,用于在不同系统或组件之间传递消息。它有助于解耦生产者和消费者,使它们可以独立扩展和演化。常见的消息中间件有:ApacheKafka:高吞吐量、分布式的发布-订阅消息系统,适合处理大数据。RabbitMQ:基于AMQP
  • 2024-06-16RabbitMQ直连交换机(Direct)
    直连交换机(Direct)指定交换机模式为直连channel.exchangeDeclare(EXCHANGE_NAME,BuiltinExchangeType.DIRECT);publicclassDirectExchange{publicstaticfinalStringEXCHANGE_NAME="direct_exchange_test";publicstaticvoidmain(String[]args)
  • 2024-06-145分钟带你了解RabbitMQ的(普通/镜像)集群
    前言让我们深入探讨RabbitMQ的集群配置,了解各种集群模式的利弊。本次讨论的重点是帮助您快速理解RabbitMQ集群的运作方式,以及选择最适合您需求的模式。好的,话不多说。在RabbitMQ中,即使只有一个节点,该节点的服务也会被作为一个集群来处理。这意味着单节点系统也遵循集群架构的规范
  • 2024-06-13RabbitMQ
    RPCRPC(远程过程调用),简单来说,就是一个进程A向另外一个进程B请求服务。进程A调用进程B的服务,就好像在调用自己进程的服务方法一样,无需关心内部的实现细节。传统的进程之间通信,是由服务端监听在某个端口,客户端进程通过远程过程调用(RPC)方式和服务端进程进行通信,这种通信方式,当消
  • 2024-06-12“RabbitMQ入门指南:从入门到起飞,这一篇就够!打造高效消息通信系统的第一步“。
    1.前言        RabbitMQ是一个开源的消息代理软件,它实现了高级消息队列协议(AMQP)的标准,并用Erlang语言编写。作为消息代理,RabbitMQ接收、存储和转发消息,帮助应用程序之间实现异步通信。它提供了一个强大而灵活的消息传递机制,可以在分布式系统中可靠地传递消息,确保消息
  • 2024-06-12springboot rabbitmq如何保证消息顺序消费
    很多时候,消息的消费是不用保证顺序的,比如借助mq实现订单超时的处理。但有些时候,业务中可能会存在多个消息需要顺序处理的情况,比如生成订单和扣减库存消息,那肯定是先执行生成订单的操作,再执行扣减库存的操作。那么这种情况下,是如何保证消息顺序消费的呢?首先,为了效率,我们可以设置
  • 2024-06-12RabbitMQ-如何保证消息不丢失
    RabbitMQ常用于异步发送,mysql,redis,es之间的数据同步,分布式事务,削峰填谷等.....在微服务中,rabbitmq是我们经常用到的消息中间件。它能够异步的在各个业务之中进行消息的接受和发送,那么如何保证rabbitmq的消息不丢失就显得尤为重要。首先要分析问题,我们就要明确rabbitmq在什么时
  • 2024-06-09rabbitmq单机安装及性能测试
    RabbitMQ单机安装及性能测试本文使用CentOS7.9安装RabbitMQ单机环境,并进行性能测试。1.安装RabbitMQRabbitMQ依赖Erlang,版本配套关系参考官网:https://www.rabbitmq.com/docs/which-erlang。本文安装RabbitMQ3.8.21,Erlang版本要求为23.2~24.2。#卸载通过yum源安装的erlang,
  • 2024-06-09“【SpringBoot】SpringBoot整合RabbitMQ消息中间件,实现延迟队列和死信队列”文章说了啥?
    在SpringBoot中整合RabbitMQ以实现延迟队列和死信队列的功能,主要涉及以下几个关键步骤:1.引入依赖:首先,在项目的pom.xml文件中添加RabbitMQ的依赖。2.配置RabbitMQ:在application.properties或application.yml文件中配置RabbitMQ的相关参数,包括连接信息、交换机名称、队列名
  • 2024-06-09RabbitMQ笔记
     端午无聊,就来学学MQ吧消息队列消息指的是两个应用之间传递的数据消息队列是在消息传递中保存消息的容器生成者:只负责发送数据消费者:只负责读取数据(数据就是消息)为什么要用消息队列解耦如果一个系统(系统a)的需求是共享自己系统的数据,而其他系统(系统BCD)是需求者。而
  • 2024-06-09【RabbitMQ】SpringAMQP--消息转换器
    在SpringAMQP的发送方法中,接收消息的类型是 Object,也就是说我们可以发送任意对象类型的消息,SpringAMQP会帮我们序列化为字节后发送。测试发送Object类型消息1.声明队列@ConfigurationpublicclassFanoutConfig{@BeanpublicQueueobjectQueue(){return
  • 2024-06-08SpringAMQP使用管理RabbitMQ的五种消息模型
    使用SpringAMQ实现五种消息队列模型1.普通队列2.工作队列(WorkQueue)发布订阅=>根据交换机的不同分为三种3.订阅模型之Fanout(广播)4.订阅模型之Direct(路由)5.订阅模型之Topic(话题)使用前导:1.在生产者和消费者项目上分别导入RabbitMQ依赖<!--AMQP依赖,包含RabbitMQ-->