ZeroMQ没有推动

时间:2015-08-10 13:13:23

标签: zeromq

我试图使用ZeroMQ,但我似乎无法推送任何消息来尝试其他任何内容。

我的制作人是

import time, json, zmq

def producer():
    context = zmq.Context.instance()
    zmq_socket = context.socket(zmq.PUSH)
    zmq_socket.bind("tcp://*:9555")
    # Start your result manager and workers before you start your producers
    for num in xrange(200):
        work_message = { 'num' : num }
        print work_message
        zmq_socket.send(json.dumps(work_message))

producer()

我得到的只是第一次印刷的信息,然后等待。

1 个答案:

答案 0 :(得分:2)

另一方面没有监听器,socket.send()是PUSH套接字上的阻塞方法。

您需要启动您的消费者并检查一切是否一切正常。

以下是文档:https://zeromq.github.io/pyzmq/api/zmq.html#zmq.Socket.send

作为旁注: 当PULL端连接时会创建等待队列,因此在这种情况下NOBLOCK标志将无用。

检查此问题以获取有关该标志的更多信息:zmq send with NOBLOCK raise Resource temporarily unavailable