rabbitmq - 如何处理卡住的 RabbitMQ Dynamic Shovel 消息
问题描述
我们目前正在使用RabbitMQ 动态铲子将消息转发到Azure 事件中心。最近我们设置了一个新队列以转发到事件中心。此队列中的某些消息的大小超过1MB,这是事件中心上消息的限制。由于此限制,消息会弹回并每秒再次发送几次。这会产生大量网络流量,这可能是一个问题。
有没有办法将反弹回 DLX(死信交换)或不同队列的消息发送?我们已经寻找了一些 Dynamic Shovel 选项,但找不到任何有用的选项。
解决方案
谢谢杰西乡绅。发布您的建议作为帮助其他社区成员的答案。
通常,对于您的有效负载大于(或可能)大于允许大小的情况,我们建议您考虑将有效负载存储在其他一些持久存储(例如 Blob 存储)中的声明检查模式,然后使用正文发布事件指向该资源。
可以参考RabbitMQ 中的死信死信消息。
你也可以在 GitHub 上打开一个问题:rabbitmq-server
推荐阅读
- android - SharedPreferences 在 textview 中保存更改文本大小
- postgresql - 如何加速 spark df.write jdbc 到 postgres 数据库?
- javascript - 如何创建一个表元素并动态添加未知数量的行?
- php - PHP将两个字符之间的字符串分解为数组?(菜鸟问题)
- python-3.x - 如何编写此代码以在 python 中使用?
- python - 循环不会按预期运行
- angular - 如何修复不等待金字塔后端响应的角度http帖子
- java - lambda 调用如何与接口交互?
- javascript - 如何将 Web Audio API 连接到 Tone.js?
- c++ - 使用 `std::enable_if` 转发包装器失败