【发布时间】:2012-07-10 20:56:06
【问题描述】:
我在我的 Centos 中使用 Zmq。我的任务是使用 ZMQ 编写一个 Java 程序,该程序将有一个生产者和多个消费者。如果一个生产者发送 100 条消息,并且有四个消费者,那么所有消费者必须每人共享 25 条消息。我该怎么做。
【问题讨论】:
标签: java message-queue zeromq jzmq
我在我的 Centos 中使用 Zmq。我的任务是使用 ZMQ 编写一个 Java 程序,该程序将有一个生产者和多个消费者。如果一个生产者发送 100 条消息,并且有四个消费者,那么所有消费者必须每人共享 25 条消息。我该怎么做。
【问题讨论】:
标签: java message-queue zeromq jzmq
我自己已经找到了方法。我们必须使用代理来解决这个问题,并且代理必须有两个用于前端和后端连接的套接字。然后在 ZMQ 中有几个可用的类,如 streamer、queue 和 forwarder。我们可以通过将上下文、前端、后端作为构造函数的参数来为这个类创建对象。只需调用 run 方法让代理等待即可。
【讨论】:
您可以更简单地执行此操作;如果 Socket 类型具有循环的传出策略(PUSH、REQ、DEALER),如果所有端点都连接,则可以假设工作将均匀分布。如果您这样选择,您可以避免使用经纪人。
【讨论】: