Có lẽ có điều gì đó rất nhỏ mà tôi thiếu nhưng tôi không thể lấy một ví dụ pub-sub đơn giản làm việc bằng Python sử dụng gói Pyzmq chính thức (https://github.com/zeromq/pyzmq).ZeroMQ PubSub không hoạt động w Pyzmq
Tôi đang sử dụng bản phát hành ổn định ZeroMQ mới nhất 4.0.3 và có thể có được một ví dụ đơn giản hoạt động khá dễ dàng trong c. Tôi đã thử trên cả máy Mac và Ubuntu. Tôi mong muốn được bất kỳ đầu vào về vấn đề này;)
Dưới đây là mã của tôi:
sub.py
import zmq
ctx = zmq.Context()
s = ctx.socket(zmq.SUB)
s.connect("tcp://127.0.0.1:5567")
s.setsockopt(zmq.SUBSCRIBE,'')
while True:
print 'waiting...'
msg = s.recv()
print 'received:', msg
pub.py
import zmq
ctx = zmq.Context()
s = ctx.socket(zmq.PUB)
s.bind("tcp://*:5567")
for i in range(100):
s.send("test")
Và đó là nó. Cảm ơn bạn! – Stephen
Tại sao phiên bản C hoạt động sau đó, như @Stephen nói? Và có cách nào để loại bỏ hack này, trong khi vẫn duy trì khả năng kết nối nhiều nhà xuất bản với một người đăng ký không? (than ôi, không có 'zmq.PAIR') – Pastafarianist
Giải pháp khá xấu: ( – DataGreed