首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在多处理系统上处理皮卡消费者

如何在多处理系统上处理皮卡消费者
EN

Stack Overflow用户
提问于 2017-11-06 11:32:07
回答 1查看 762关注 0票数 1

我有一个多进程和多线程系统,它与Pika一起使用一些队列。当系统在单进程上与多线程使用者一起工作时,它工作得很好,但是当它处理多进程(派生进程)时,有时一些使用者从队列中获取重复的数据。

如何处理当使用者从队列中获取数据时,其他使用者再也不会从该队列中获取数据的问题?

发行地图样本:

代码语言:javascript
复制
Single-Process, Multi-Thread:
    Sample queue data: 1-2-3-4-5
        consumed by thread-1: 5
        consumed by thread-2: 4
        ...

Multi-Process, Multi-Thread:
    Sample queue data: 1-2-3-4-5
        consumed by process-1, thread-1: 5   << ISSUE
        consumed by process-2, thread-1: 4
        consumed by process-3, thread-3: 5   << ISSUE
        ...

注意:每个线程都有自己的连接。

EN

回答 1

Stack Overflow用户

发布于 2017-11-07 02:49:08

RabbitMQ团队监视这个邮寄名单,有时只回答StackOverflow上的问题。

在创建其他进程或线程之前,是否创建Pika客户端?Pika客户端既不是线程安全的,也不是多进程安全的,正如医生们中所指出的。

如果不提供一个工作示例,我就无法进一步诊断这一特定行为。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47136019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档