开发者社区 > 云原生 > Serverless > 正文

Serverless一直报这个错误

RabbitMQ.Client.Exceptions.OperationInterruptedException:“The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=406, text='QueueHasDiffField[OldDurable=true&NewDurable=false;OldMessageTtl=60000&NewMessageTtl=-1;], ReqId:64B4AB0C3038323600C0CEC3, ErrorHelp[queue=Msg.Queue, https://c.tb.cn/F3.Zro5uI]', classId=50, methodId=10”

提问2.png

一直报这个错误

展开
收起
云原生那些事 2023-07-17 13:08:46 203 0
3 条回答
写回答
取消 提交回答
  • 根据报错信息,您遇到的错误是 RabbitMQ 客户端的 OperationInterruptedException 异常。该异常通常表示在执行 AMQP 操作时发生了中断或错误。

    根据错误消息,这个错误可能有以下原因:

    1. 队列参数不匹配:报错中提到了 QueueHasDiffField,可能是由于队列参数的不匹配导致的。具体来说,旧的队列可能设置为持久化(Durable)且消息过期时间为 60 秒,而新的队列设置为非持久化且没有消息过期时间(MessageTTL)。这种差异会导致 RabbitMQ 报错 406。

    解决方案:确保在声明或更新队列时,队列的参数与之前的设置相匹配。

    1. RabbitMQ 网络或配置问题:错误消息还提到了 "ReqId" 和 "ErrorHelp",指示了一些相关的请求 ID 和错误帮助文档链接。这可能暗示了 RabbitMQ 的网络连接问题或配置问题。

    解决方案:检查 RabbitMQ 的网络连接是否正常,并确保其配置正确。

    针对这个错误,建议您采取以下步骤进行排查和解决:

    1. 检查代码:确认您的代码中对 RabbitMQ 的操作是否正确,并确保在声明或更新队列时传递正确的参数。

    2. 检查 RabbitMQ 配置:验证 RabbitMQ 的配置文件,特别是涉及到队列参数的部分。

    3. 检查网络连接:确保您的应用程序能够正常连接到 RabbitMQ 服务器,没有网络故障或防火墙问题。

    4. 参考错误帮助文档:根据错误消息提供的 "ErrorHelp" 链接,参考相关文档来获取更多关于该错误的信息以及解决方案。

    如果问题仍然存在,建议您联系 RabbitMQ 或阿里云技术支持,以获取更进一步的帮助和指导。

    2023-07-23 09:25:08
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    错误信息中提到了队列的持久化(Durable)和消息过期时间(Message TTL)发生了变化,导致了 AMQP 协议关闭了连接。可能的原因包括:

    RabbitMQ 服务器配置发生了变化,例如队列被删除、参数被修改等;
    网络连接或者 RabbitMQ 服务器出现了异常,导致连接断开;
    您的程序代码在多个地方同时对队列进行了操作,导致队列参数发生了冲突或者不一致。
    为了诊断和解决这个问题,您可以尝试以下步骤:

    检查 RabbitMQ 服务器配置和状态:在 RabbitMQ 管理界面或者命令行工具中,检查队列的持久化和消息过期时间等参数是否正确配置,并检查服务器的状态是否正常。

    检查程序代码:检查程序代码中对队列操作的逻辑,确保不会出现冲突或者不一致的情况,并确保代码中对队列参数的设置和 RabbitMQ 服务器的配置相一致。

    尝试重新连接:在错误发生后,尝试重新连接 RabbitMQ 服务器,并重新发送消息,观察是否仍然会出现错误。如果仍然出现错误,可能需要进一步排查服务器或者网络的问题。

    2023-07-22 15:02:25
    赞同 展开评论 打赏
  • 参考下官方文档中所提供的办法 https://help.aliyun.com/document_detail/173003.html

    此答案来自钉钉群“RabbitMQ&AMQP 产品群”

    2023-07-17 17:47:29
    赞同 展开评论 打赏

快速交付实现商业价值。

热门讨论

热门文章

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载