繁体   English   中英

RabbitMQ序列化来自具有多个使用者的队列中的消息

RabbitMQ serializing messages from queue with multiple consumers

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个问题,我在共享模式下设置了一个队列,并绑定了多个使用者。 问题在于,rabbitmq似乎正在序列化消息,即一次只能运行一个使用者。 我需要将此保持平行,但是,我似乎无法弄清楚该如何做。

每个使用者都在自己的进程中运行。 队列中有很多消息。 我正在使用py-amqplib与RabbitMQ接口。

有什么想法吗?

2 个回复

预取(QOS)呢? 在小型队列上,我通过声明队列,获取当前可用消息数,附加使用者,使用消息并在消息数量耗尽后将其关闭来给出并行化的外观。 在不确认消息的情况下关闭通道会使消息可供其他使用者使用,足够快地轮询队列,您可能会得到类似的解决方案。

再说一遍,首选的AMQP模型似乎是每个连接的消费者队列。 您应该创建一个“直接”交换,并同意您的消费者都将收听的路由密钥。 然后,每个连接的使用者都应创建一个排他的,私有的,非持久的队列,并使用queue_bind()将他们的队列订阅与交换​​机上与公共路由密钥匹配的消息。 通过这种安排,我的工人将可以并行操作,而不是将其操作序列化!

1 RabbitMQ:从队列为多个消费者分派固定消息

有没有办法限制 RabbitMQ Queue 只将固定数量的消息从 Queue 分派给消费者? 我有 2 个队列 Q1 和 Q2 以及 10 个消费者。每个消费者都可以处理来自 Q1 和 Q2 的消息。在任何给定时间,只有 2 个消费者应该处理来自 Q2 的消息。所有 10 个消费者都可以同时处理 ...

2 RabbitMQ - 只有一个队列,多个消费者接收不同的消息

我有一个关于 RabbitMQ 队列的问题。 我想在一个队列上发送两种类型的消息。 我知道,我可以创建两个不同的队列,并使用路由键将不同的消息发送到不同的队列。 但我想在一个队列上有两个消费者,并以某种方式将消费者与消息类型绑定。 当客户端和核心是发布者和消费者时,它是通过兔子队列驱动的事件。 ...

3 RabbitMQ 中的单个队列和多个消费者

我在 RabbitMQ 中有一个队列,一次可以有 5-6 个任务排队。 目前,队列有一个工作人员,一次执行一项任务,直到该任务完成并确认队列中的其他任务才会被选中。 我希望同一个队列有多个消费者。 这样他们就可以在没有任何空闲时间的情况下处理剩余的任务。 ...

4 Rabbitmq排队多个消费者

我有多个使用者正在同一个队列上轮询,并每隔X秒检查一次队列,基本上X秒钟后,可能至少有两个使用者可以同时启动basic.get 。 问题是: 1.是否至少有两个消费者同时可以收到相同的消息? 2.根据我的理解,只有basic_ack会从队列中删除一条消息,所以假设我们有以下情形: ...

6 想要在同一个RabbitMQ队列上运行多个使用者

我在后端有RabbitMQ的应用程序。 因此,我想开发自定义的第三方分析代码,该代码可以连接RabbitMQ上的应用程序队列并收集数据。 所以我的问题是我想确保应用程序和我的代码都不会丢失来自Rabbitmq的任何数据。 如果可能,如何配置RabbitMQ队列? 我对RabbitMQ ...

7 RabbitMQ,docker,单个队列,多个使用者

我们在系统中使用Docker,Spring和RabbitMq。 我是AMQP的新手,我试图弄清楚交换,队列,绑定和连接如何在我们的系统中工作。 我们有多个dockerized应用程序。 简而言之,当应用程序启动时,它们每个都开始侦听相同的队列,而我不明白它们如何期望接收相同的消息。 ...

8 有条件的处理和删除多个使用者从MSMQ队列中的消息

我找到了这个相关问题,但是我的情况有些不同。 我有一个ASP.NET应用程序,该应用程序会生成长时间运行的任务,这些任务应由许多后台进程(Windows Services)处理。 大多数任务是相似的,大多数任务执行者都可以处理。 由于客户端应用程序的版本不同(任务由用户生成),某些任务 ...

9 为多个RabbitMQ消费者提供相同的消息

要求:1)我需要通过Java应用程序获取存储在Mongo DB中的数据,并使用主题交换和绑定密钥,在RabbitMQ上创建3个队列。 到目前为止,我已经实现了一切。 问题从第2点开始。 2)当消息应该从所有3个队列中的多个消费者可用时。 但是当第一个消费者消费来自3个队列的消息时 ...

10 RabbitMQ-为什么消费者从队列中消失了

我们的grail应用程序正在使用以下RabbitMQ客户端并使用XML配置 以下是发出问题的队列之一的XML配置: 在生产中,我们注意到,当'unspsc.batch.queue'上的负担很重时(即输入消息大于通道内部队列容量,即10 ),消费者突然从队列中消失(使用RabbitMQ管理UI ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM