4

目前我正在使用 zeromq 和 pub-sub 模式,我有单个工作人员要发布,并且许多(8)个订阅者(都将订阅)到相同的模式。

现在我尝试了多处理来产生它工作的订阅者。我错过了几条消息。

为什么我使用多处理是在每条消息到达并处理它们时处理它们,每第二个发布者发布 10 - 100 条消息。

在这种情况下,建议使用multiprocessingor gevent?

4

2 回答 2

4

多处理显然会有更高的内存开销,但会使用另一个核心(而且您不必担心缺乏抢占)所以..这取决于您的需求。使用 gevent 的多个进程可能会为您带来最高的吞吐量/最低的延迟。

于 2012-04-03T21:51:17.013 回答
4

我正在回答我自己的问题

我选择多处理而不是 gevent

  1. 服务器有 8 个核心
  2. 需要并行性
  3. 选择 ZMQ 而不是多处理队列或 gevent 队列。
于 2012-04-18T09:10:51.740 回答