rabbitmq - RabbitMQ 同时发布和消费同一个队列
问题描述
我有一个 RabbitMQ 消息队列,我想从 Web 服务调用ServiceA将多条消息发布到队列。同时,还有一个名为的 Web 服务ServiceB的 Web 服务,用于在 10 秒的时间间隔内消费来自 RabbitMQ 同一队列的消息。这个用例是否可以通过 RabbitMQ 队列的实现来实现?
RabbitMQ 是否支持发布者和消费者同时(同时)访问同一个队列?
解决方案
ServiceB 用于在 10 秒的时间间隔内消费来自 RabbitMQ 同一队列的消息。
RabbitMQ 实现这个有点奇怪。在 RabbitMQ 中,消费者通道将立即接收消息,除非其 unAck 消息达到预取限制。我建议在 RabbitMQ 消费者和ServiceB之间添加一个缓冲区缓存(每 10 秒刷新一次)。
RabbitMQ 是否支持发布者和消费者同时(同时)访问同一个队列?
在 RabbitMQ 中,发布者不能直接访问队列,只能发布消息到 Exchange,RabbitMQ Daemon 将通过 Exchange 绑定规则路由消息。换句话说,发布者和消费者可以同时独立工作。
推荐阅读
- awk - 如果匹配发生,则删除第二个匹配项
- perl - 我需要用 PHP 格式在 Perl 中序列化
- python - ModuleNotFoundError:没有名为“discord_webhook”的模块
- php - 如何通过php在html表中回显超链接
- android - 将 Android 微调器与 php 文件数组连接
- python - 专注于python tkinter中的一个窗口
- python - 为什么这个反转数字的代码会给出“inf”作为输出?
- c# - 可视化 UI 事件处理(EventAggregator 或 MessagingCenter)
- python - 在带有 python 39 的 Windows 上使用 autosub
- java - java - 如何在java中构建一个没有行为create()的akka项目?