博客
关于我
4.rabbitmq.conf文件详解
阅读量:735 次
发布时间:2019-03-21

本文共 1327 字,大约阅读时间需要 4 分钟。

rabbitsmq.conf 文件详解

rabbitsmq 配置文件是 RabbitMQ消息队列server配置的重要文件,本文将详细解释关键配置项。

一、配置文件位置

RabbitMQ 的配置文件通常位于以下路径:

/etc/rabbitmq/rabbitmq.conf

如果你在生产环境中部署 RabbitMQ,很有可能需要通过命令行工具访问这个文件,例如:

sudo nano /etc/rabbitmq/rabbitmq.conf

Two、重要配置项详解

以下是 rabbitsmq.conf 文件中许多关键的配置参数及其作用。

  • 网络部分配置
  • rabbitmq-server监听 TCP端口,默认设置为 5672:

    listeners.tcp.default=5672

    如果需要绑定特定接口,如 IPv4 地址:

    listeners.tcp.local=127.0.0.1:5672listeners.tcp.local_v6=::1:5672

    也可以指定其他端口:

    listeners.tcp.other_port=5673

    注意:listeners.tcp.other_ip 参数不推荐用于生产环境,因为它会暴露额外的接口。

    为确保通信安全,建议配置 SSL 端口,默认设置为 5671:

    listeners.ssl.default=5671

    设置 TCP 和 TLS监听器的接受进程数量,默认为 10:

    num_acceptors.tcp=10num_acceptors.ssl=10

    AMQP 连接的握手超时时间,默认为 10000 毫秒:

    handshake_timeout=10000

    以及反向 DNS 查找设置:

    reverse_dns_lookups=false

    处理连接时的最大信道数量,默认为 128:

    channel_max=128
    1. 安全和访问策略
    2. 配置文件中的安全设置可以帮助你控制访问权限。例如,默认情况下“guest”用户只允许通过环回接口访问:

      loopback_users.guest=false

      意味着如果需要允许其他电脑访问,必须在管理控制台中手动更改。

      1. 用户相关配置
      2. 配置默认用户和密码:

        default_vhost=/default_user=guestdefault_pass=guest
        1. 内存设置
        2. 内存管理是 RabbitMQ 运行稳定性的关键。以下是一些重要设置:

          • 设置内存使用的水挡线,占用 40%以上时会触发警告:
          vm_memory_high_watermark.relative=0.4
          • 设置绝对内存限制(例如 2GB):
          vm_memory_high_watermark.absolute=2GB
          • 内存监控的时间间隔(默认为 2500 毫秒):
          memory_monitor_interval=2500

          注意:上述参数要求合理配置内存资源,避免因内存耗尽导致服务瘫痪。

          三、总结

          rabbitsmq.conf 文件是 RabbitMQ配置的核心文件,其中网络和安全配置项尤为重要。在生产环境中,建议根据实际需求调整监听端口和安全设置,并结合 Erlang 内存管理策略,确保系统的平稳运行。

    转载地址:http://qppgz.baihongyu.com/

    你可能感兴趣的文章
    Python3+Requests+Unittest实战系列【一】
    查看>>
    python3+requests+unittest实战系列【一】
    查看>>
    python3+requests+unittest实战系列【二】
    查看>>
    Python3+Requests+Unittest实战系列【二】
    查看>>
    python3----ASCII
    查看>>
    Python3-selenium自动化测试框架,结合HTMLTestRunner测试报告!
    查看>>
    Python3-如何自我更新作为服务运行的应用程序
    查看>>
    Python3.1-网格模拟概念性问题
    查看>>
    Python3.12 解决conda环境libstdc++版本过低问题
    查看>>
    python3.2批量查询IP地址区域
    查看>>
    Python3.5中协程和未来/任务之间的区别?
    查看>>
    python3.5实现socket通讯(TCP)
    查看>>
    python3.6 ubuntu部署nginx、 uwsgi、 django
    查看>>
    Python3.6.3中,functools似乎不能用
    查看>>
    python3.6.5+cuda9+cudnn7.1+win10+tensorflow-gpu1.9.0下载配置
    查看>>
    python3.6使用pickle序列化class
    查看>>
    python3.6入门到高阶(全栈) day027 网络通信协议 osi七层模型
    查看>>
    Python3.6属性错误:模块‘;异步没有属性‘;运行‘;
    查看>>
    python3.6版本中的python-weka-wrapper安装失败,错误代码为%1
    查看>>
    Python3.7安装cv2踩过的坑
    查看>>