RabbitMQ的延迟队列实现[死信队列](笔记一)

关于死信队列的使用场景不再强调,只针对服务端配置
注意: 本文只针对实现死信队列的rabbitMQ基本配置步骤进行阐述和实现

目录

1、docker-compose 安装rabbitMq

a、使用docker-compose.yml安装rabbitMq,配置如下

yml 复制代码
version: '3.1'
services:
  rabbitmq:
    image: rabbitmq:3.8.3-management
    container_name: rabbitmq
    restart: always
    hostname: myRabbitmq
    ports:
      - 15673:15672
      - 5673:5672
      - 15674:15674
    volumes:
      - /opt/rabbitmq/data:/var/lib/rabbitmq
    environment:
      - RABBITMQ_DEFAULT_USER=root
      - RABBITMQ_DEFAULT_PASS=root+12345678

注意: 建议大家安装带有-management的,可进行控制台登录查看

b、启动

shell 复制代码
docker-compose up -d rabbitmq

c、查看状态,如下图

shell 复制代码
docker ps

d、访问(ip+端口)并登录

1.2.3.4:15673

2、查看对应的版本及插件下载

a、从docker-compose 可以看到本版为3.8.3,所以下载对应版本或者大版本相同的延迟插件

b、下载链接: https://www.rabbitmq.com/community-plugins.html

c、在该地址页面找:rabbitmq_delayed_message_exchange

d、我这里下载了rabbitmq_delayed_message_exchange-3.8.0.ez

e、将文件上传至rabbitMQ所在服务器即可

3、安装插件和检测

a、先确认RabbitMQ服务是否安装过死信队列组件(两种方式)

第一种、控制台------>Exchanges------>Add a new exchange,查看Type下拉框,没有x-delayed-message

第二种、服务端进入容器查看

shell 复制代码
//TODO 进入容器
docker exec -it rabbitmq bash
//TODO 进入插件目录
cd plugins
//TODO 查看插件列表
ls

b、安装

1、使用 docker 命令将上传好的插件复制到容器内部 插件目录下

shell 复制代码
docker cp rabbitmq_delayed_message_exchange-3.8.0.ez  rabbitmq:/plugins

2、进入容器查看是否复制成功

shell 复制代码
 //TODO 进入容器
docker exec -it rabbitmq bash
//TODO 进入插件目录
cd plugins
//TODO 查看插件列表
ls

3、安装启用

shell 复制代码
 //执行启用插件命令
rabbitmq-plugins enable rabbitmq_delayed_message_exchange
shell 复制代码
 //查看结果,并退出容器
rabbitmq-plugins enable rabbitmq_delayed_message_exchange
//退出容器
exit

c、重启RabbitMq服务

shell 复制代码
docker restart rabbitmq

d、检查对比

1.登录台控制台------>Exchanges------>Add a new exchange,查看Type下拉框,已经有了x-delayed-message

相关推荐
是火云哦20 分钟前
打包你的开发环境:Docker 从入门到上瘾
运维·docker·容器
小明_GLC35 分钟前
关于租用阿里云服务器拉取Docker镜像的问题
docker
今晚打佬虎42 分钟前
精准阻断 Docker 容器映射端口:流量路径诊断与 iptables 配置
运维·docker·容器
那年一路北44 分钟前
基于 Maven + Docker 的 WebApp 打包与部署
docker·maven·web app
阡陌..1 小时前
Linux下用docker调用pytorch-无法检测到cuda问题
linux·pytorch·docker
KubeSphere 云原生2 小时前
在 KubeSphere 上运行 Moltbot(Clawdbot):自托管 AI 助手的云原生实践
docker·云原生·容器
你才是臭弟弟2 小时前
生产环境开箱即用的“Flink + Iceberg 数据湖容器搭建”(Docker)
docker·容器·jar
爱技术的小伙子3 小时前
【 Docker 快速部署 MySQL 8.0(2026最新实践)—— 一键启动 + 数据持久化 + 常见优化】
mysql·adb·docker
hunter14503 小时前
docker 在centos和ubuntu的安装
linux·docker·centos
不做码农好多年,该何去何从。3 小时前
阿里云上使用docker-compose安装禅道
阿里云·docker·云计算