Jest prawdopodobnie coś bardzo małego, czego mi brakuje, ale nie jestem w stanie uzyskać prostego przykładu pub-sub pracującego w Pythonie przy użyciu oficjalnego pakietu Pyzmq (https://github.com/zeromq/pyzmq).ZeroMQ PubSub nie działa w Pyzmq
Korzystam z najnowszego stabilnego wydania 4.0.3 ZeroMQ i jestem w stanie uzyskać prosty przykład działający dość prosto w c. Próbowałem na komputerze Mac i Ubuntu. Liczę na każdym wejściu na ten temat;)
Oto mój kod:
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")
I to było to. Dziękuję Ci! – Stephen
Dlaczego działa wtedy wersja C, jak mówi @Stephen? Czy jest jakiś sposób na pozbycie się tego hackowania, przy jednoczesnym zachowaniu możliwości łączenia wielu wydawców z jednym subskrybentem? (Niestety, nie 'zmq.PAIR') – Pastafarianist
Bardzo brzydkie rozwiązanie :( – DataGreed