首页 > 其他分享 >rabbitmq告警Error: health check failed. Message: resource alarm(s) in effect:[{resource_limit,memory,&

rabbitmq告警Error: health check failed. Message: resource alarm(s) in effect:[{resource_limit,memory,&

时间:2023-07-27 12:12:15浏览次数:40  
标签:resource 配置文件 阈值 RabbitMQ 使用量 rabbitmq Message 内存

 

这个错误信息表示 RabbitMQ 的内存使用量超出了预设的阈值,导致触发了 RabbitMQ 的内存警告阈值报警。

RabbitMQ 在运行过程中会不断地将消息存储在内存中,如果内存使用量超出了预设的阈值,就会触发内存警告阈值报警。这个阈值的默认值是 40% 的物理内存,可以通过修改 RabbitMQ 的配置文件来调整它。

要解决这个问题,你可以尝试以下几种方法:

  1. 增加 RabbitMQ 节点的物理内存。这是最直接的方法,可以通过升级 RabbitMQ 节点的硬件配置来增加内存。这样做可以让 RabbitMQ 能够处理更多的消息,减少内存使用量超出阈值的可能性。

  2. 调整 RabbitMQ 的内存警告阈值。你可以通过修改 RabbitMQ 的配置文件来调整内存警告阈值。具体来说,你可以在 RabbitMQ 的配置文件中添加以下内容:

[{rabbit, [{vm_memory_high_watermark, 0.8}]}].
这里的 0.8表示内存使用率的阈值,也就是当 RabbitMQ 的内存使用率超过 80% 时就会触发警告。你可以根据实际情况将这个值调整为合适的值。
  1. 减少 RabbitMQ 的内存使用量。你可以通过以下几种方式来尽可能地减少 RabbitMQ 的内存使用量:

    • 减少队列的数量和大小。如果你有很多队列,并且它们的大小比较大,那么就会占用大量的内存。你可以考虑删除一些不再需要的队列,或者缩小队列的大小。

    • 减少消息的大小。如果你的消息比较大,那么就会占用更多的内存。你可以考虑压缩消息,或者将消息分为多个部分发送。

    • 关闭不需要的插件。如果你安装了很多不需要的插件,那么它们也会占用一定的内存。你可以考虑关闭一些不需要的插件来减少内存使用量。

需要注意的是,在修改 RabbitMQ 的配置文件之前,你需要先停止 RabbitMQ 服务,然后再重新启动它。

 如果没有这个配置文件,需要手动创建
 /etc/rabbitmq/rabbitmq.conf:RabbitMQ 的主要配置文件,用于配置 RabbitMQ 的基本参数,如节点名称、端口号、日志文件等。

注意,如果你使用的是 RabbitMQ 的集群模式,那么关于节点之间的配置信息则保存在 /var/lib/rabbitmq/.erlang.cookie 文件中。该文件用于存储 Erlang 节点间的安全 cookie,确保各个节点之间的通信是安全的。

在配置 RabbitMQ 时,建议备份好配置文件,以免意外修改或删除导致 RabbitMQ 无法正常工作。

 

标签:resource,配置文件,阈值,RabbitMQ,使用量,rabbitmq,Message,内存
From: https://www.cnblogs.com/rtnb/p/17584607.html

相关文章

  • MFC-MessageBeep播放系统定义的波形声音
     MessageBeep(MB_ICONEXCLAMATION);//播放系统定义的波形声音/*-1从机器的扬声器中发出蜂鸣声MB_ICONASTERISK播放由SystemAsterisk定义的声音MB_ICONEXCLAMATION播放由SystemExclamation定义的声音MB_ICONHAN......
  • RabbitMQ由于x-message-ttl设置与代码不一致导致declareQueue时IO异常
    具体异常:Causedby:com.rabbitmq.client.ShutdownSignalException:channelerror;protocolmethod:#method<channel.close>(reply-code=406,reply-text=PRECONDITION_FAILED-inequivalentarg'x-message-ttl'forqueue'queryResult'invho......
  • APP - Appium-Inspector连接报错Failed to create session, The requested resource c
    APP-Appium-Inspector连接报错Failedtocreatesession,Therequestedresourcecouldnotbefoundappium版本:Appium-Server-GUI-windows-1.22.3-4Appium-Inspector版本:Appium-Inspector-windows-2022.5.4填写好参数连接时报错: 错误信息:错误Failedtocreatesess......
  • cocos creator 资源加载函数 resources.load 注意该函数为异步
    constanimationComponent=i.addComponent(Animation);if(animationComponent){constcomponent=animationComponent.getComponent(Animation);if(component){resources.load("An......
  • RabbitMQ(二)Exchange
    RabbitMQ(二)Exchange1RabbitMQ的运行机制AMQP中消息的路由过程和JMS存在一些差别,AMQP中增加了Exchange和Binding的角色生产者把消息发布到Exchange上,消息最终到达队列而被消费者接受,而Binding决定交换器的消息应该被发送到哪个队列​ Exchange分发消息的时候根据类型的不同......
  • RabbitMQ(一)简介
    RabbitMQ(一)简介1简介大多应用中,可通过消息服务中间件来提升系统异步通信、扩展解耦能力消息中间件有两个重要概念:消息代理目的地消息发送者发送消息之后,将由消息代理接管,消息代理保证消息传递到指定目的地消息队列有两种形式的目的地队列(queue):点对点消息通......
  • RabbitMQ(四)RabbitMQ的确认机制
    RabbitMQ(四)RabbitMQ的确认机制保证消息不丢失、可靠抵达,可以使用事务消息,但性能会下降250倍,因此引入确认机制:publisher:ConfirmCallback确认模式publisher:returnCallBack未投递到queue退回模式consumer:ack机制1发送端的确认机制ConfirmCallbackConfirmCallba......
  • RabbitMQ(三)整合SpringBoot
    RabbitMQ(三)整合SpringBoot1整合RabbitMQ1导入依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency>2查看容器的自动配置......
  • .NET 中使用RabbitMQ初体验
    在.NETCore中使用RabbitMQ前言逛园子的时候看到一篇.NET学习RabbitMq的文章(视频地址和文章地址放在文章底部了),写的不错,我也来实现一下。我是把RabbitMQ放在服务器的,然后先说一下如何部署它。注意:在使用到RabbitMQ的项目中需要安装Nuget包dotnetaddpackageRabbitMQ.Clien......
  • RabbitMQ 的CLI管理工具 rabbitmqadmin
     RabbitMQ的CLI管理工具rabbitmqadminApr20,2016Erlang的仓库下载配置,Erlang的升级,RabbitMQ的升级,服务启动,插件启用,RabbitMQCLI管理工具rabbitmqadmin的获取,RabbitMQ的架构、概念、消息投递过程,user、vhost、connection、exchange、binding、permission、channels、p......