用了这么久rabbitmq,你还不知道它的目录结构吗?

本文介绍了RabbitMQ的目录结构,包括配置目录中的rabbitmq.conf、rabbitmq-env.conf和advanced.config,数据目录存储的位置,日志文件所在的/var/log/rabbitmq,以及脚本目录下的bin和lib子目录,其中lib目录的escript存放启动命令,plugins目录用于管理插件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 配置目录

rabbitmq配置目录:/etc/rabbitmq/

​ 常见配置文件有:

(1)配置文件 rabbitmq.conf

(2)环境变量文件 rabbitmq-env.conf

(3)补充配置文件 advanced.config

2.数据目录

rabbitmq数据目录:/var/lib/rabbitmq/

目录文件有:

image-20230408101902865

3.日志文件

rabbitmq日志文件: /var/log/rabbitmq

​ 目录文件有:

image-20230408101753026

4.脚本目录

rabbitmq命令脚本:/usr/lib/rabbitmq/

在这里插入图片描述

1.bin目录

image-20230408102920345

  • bin目录脚本是由目录/usr/lib/rabbitmq/lib/rabbitmq_server-3.8.6/sbin/创建的软链接

在这里插入图片描述

2.lib目录

ll ./rabbitmq_server-3.8.6

image-20230408104106275

  • escript目录存放rabbitmq真正启动的命令

image-20230408104200429

  • plugins目录

    存放各种插件压缩包(可重第三方下载插件放置此位置,解压后启动插件)

    image-20230408104418704

### RabbitMQ 确保消息可靠性传输的最佳实践 #### 生产者确认机制 为了确保消息能成功发送至 RabbitMQ 服务器,生产者应启用确认模式。当消息被写入内存并准备投递给至少一个消费者时,RabbitMQ 将向发布者返回一条确认信息。这种方式可以有效预防因网络波动或其他异常情况造成的消息丢失[^2]。 ```python import pika connection = pika.BlockingConnection(pika.ConnectionParameters('localhost')) channel = connection.channel() # 开启 publisher confirms 模式 channel.confirm_delivery() ``` #### 消息持久化设置 即使消息已抵达队列内部,若仅保存于内存之中,在遭遇服务崩溃的情况下仍会面临数据遗失的风险。因此建议开启消息持久化选项,使得每条记录都被同步到磁盘文件里,以此保障即便发生意外停机也能恢复未处理完毕的信息流[^3]。 ```python properties=pika.BasicProperties(delivery_mode=2,) # 设置 delivery_mode 为 2 表明该消息需要持久化 channel.basic_publish(exchange='', routing_key='task_queue', body=message, properties=properties) ``` #### 队列声明参数调整 创建队列时指定其具备持久属性同样重要,这样可使整个队列结构得以长期保留下来而受临时性的节点重启影响。同时还可以考虑设定`x-max-priority`来支持优先级队列功能,以及利用死信交换器(`Dead Letter Exchanges`)增强系统的健壮性和灵活性。 ```python arguments={ 'x-message-ttl': 60000, # TTL (Time To Live), 单位毫秒 'x-dead-letter-exchange': 'dlx', # 死信转发给 dlx exchange } channel.queue_declare(queue='durable_queue', durable=True, arguments=arguments) ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿红

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值