问题标签 [rabbitmq-exchange]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
logging - 将 RabbitMQ 与 Logstash 一起使用时丢失消息
我刚刚安装了 RabbitMQ,我将它与 logstash 一起使用。我一直在发送消息,但丢失了很多数据。我不知道我该如何解决。我在 rabbitMQ 中使用默认配置。
这些是 logstash 中的输出和 logstash 中的输入:
我正在使用 RabbitMQ 管理来查看队列的演变。当我发送 10,000 条消息时,我只收到不到一半。我应该更改任何参数以改善rabbitMQ的行为吗?我打算按顺序使用它,这样我就不会丢失消息,但我失去的比没有它时还要多。
rabbitmq - RabbitMQ 手动重试
将消息放入死信队列后,如何在 RabbitMQ 中手动重试?
RabbitMQ 是否提供了一个用户界面,您可以通过它来执行此操作?我在这里假设 RabbitMQ 控制台不为您提供此功能。
erlang - 如何在 RabbitMQ 3.5.6 的自定义交换中修改交付(消息)?
我正在为 RabbitMQ 编写自定义交换,它必须从交换中获取参数并将它们放入消息头。我对 Erlang 不是很熟悉。
我在 rout 方法中创建了新的 Delivery,但据我所知,我无法在 Erlang 中修改原始变量,因此 Rabbit 继续使用原始变量。
有没有办法在交换中修改消息或者说兔子继续新的。
c# - 通过 ConsumeContext --Masstransit 发布命令处理程序的命令结果
我已经为 masstransit 配置了一个 webapi 控制器。像这样的东西。
控制台应用程序是我的服务器,它正在监听我的命令/事件——
控制器动作类似于 -
处理程序是——
现在我的情况是 .
创建一个命令对象。
Context.SaveAsync()
从新创建的 Entity 框架方法中获取产品 ID 。将 ProductId 发布到总线,以便其他侦听器可以侦听此产品 Id 并采取相应的行动。
我试图找出在这种情况下应用的最佳模式。
现在问题从—— await context.Publish<ProductItemCreatedEvent>(Product.Id);
这一行开始。它尝试一次又一次地无限发布到同一个队列。结果,相同的 Product 对象被插入了数百次(我知道这很蹩脚,导致没有唯一约束,但这不是这里的问题),发生的情况是我的命令处理程序尽管被强类型化,但它会无限期地执行。如何摆脱这种情况。我对公共交通概念很陌生。
所以有人可以阐明为什么会发生这种情况。
rabbitmq - 通过克服“吞吐量和 CPU 利用率可能会恶化”警告来提高我的 Rabbitmq 的吞吐量
我在 rabbitmq.config 文件中应用了一些配置,如下所示:
我在“rabbit@nodname.log”文件中收到以下警告消息。
警告消息:内核轮询(epoll、kqueue 等)已禁用。吞吐量和 CPU 利用率可能会恶化。
谁能建议如何增加我的 Rabbitmq 的吞吐量并建议上述警告消息的重要性?
我正在使用最新版本的 Rabbitmq:3.6.0。
谢谢,
rabbitmq - 多交换队列模型的 RabbitMQ 消费者设计
我有一个具有以下配置的 RabbitMQ 设置。
- 每个交易所都是
FANOUT
类型 - 多个队列附加到每个 Exchange。
BlockingConnection
由消费者制造。- 单个消费者处理所有回调。
问题 -
一些有效负载比其他有效负载需要更长的时间来处理,这导致消费者即使在其他队列中有有效负载时也保持空闲状态。
问题 -
- 我应该如何实施消费者以避免长时间等待?我应该为每个模块运行单独的消费者吗?任何用户体验?
- 我可以配置 RabbitMQ 来处理这些情况吗?如果是这样怎么办。?
excel - 以 csv 或 excel 格式获取 RabbitMQ 队列中的所有消息
我的 RabbitMq 队列中有大约 10000 条消息处于就绪状态。我正在考虑清除消息,但在清除之前,我需要将所有消息详细信息下载为 csv 或 excel 以进行备份。
有没有办法做到这一点。我正在使用 RabbitMQ 管理插件(Web UI)。
提前致谢
rabbitmq - RabbitMQ CLI 状态与管理门户不同
我注意到,当我从命令行 ( rabbitmqctl status
) 运行 RabbitMQ 状态命令时,所有报告的数字都与我所知道的现实不符。我在管理门户网站中看到的内容证实了我的现实。
这是 CLI 状态的输出:
读者数量、作者数量、渠道数量等,基本上每个数量都成千倍。
在管理门户(下面的 ss)中看到的数字是正确的。总共 10 个连接,每个连接有两个通道
我所有的队列都是非持久的,我只使用扇出交换发送非持久性消息。据我了解,这应该意味着如果出现问题(这对我的需要来说很好),什么都不会持续存在。
我注意到,每当我启动或关闭连接到代理的模块之一时,在命令行上读取器/写入器的数量会增加约 17,000 个,尽管门户中仅向上/向下 1 个。
这是我的代理配置代码供参考:
客户端使用构建器模式来实例化代理连接,此时他们指定他们的发布交换和他们希望订阅的任意数量的交换。这个系统总共只有 19 个交易所。
消息正在正确发布和接收,但我收到报告称代理正在阻塞服务器。我会更密切地监视它,但我真的很想能够解释状态调用的这些古怪结果。我已经尝试停止应用程序并重置然后重新配置代理,这会使连接计数回到 0,但是一旦模块开始重新连接,数字就会开始回升。
感谢您抽出宝贵时间浏览此内容。任何建议将不胜感激!
java - Spring rabbitmq 通过动态绑定发送到交换
我尝试使用 TopicExchange 来屏蔽消息。
配置:
零件:
当我使用发送(包括 TopicExchange 之前)时 - 一切正常。消息被直接发送到队列,handle() 已经接收到它。但是对于 TopicExchange.... 我尝试使用它:
测试总是失败,但在日志中我看到了这个 - DEBUG osamqp.rabbit.core.RabbitTemplate - Publishing message on exchange [sample.exchange], routingKey = [qq] 怎么了???谢谢
rabbitmq - 动态 SendTo 注释
我有如下Java代码来接收来自队列的消息,处理它并将处理后的消息写入另一个队列。
在这里,我总是从“rawFusion”队列中获取消息并将其写入“Fusion”队列。
我想做的是,根据某些条件将消息写入不同的队列。所以我想 在收到来自“RawFusion”队列的消息后决定@SendTo
参数(或者可能不使用)。@SendTo
知道怎么做吗?
提前致谢