Я хотел бы связать два процесса (отправитель и получатель), используя zeromq.Теперь, если процесс-получатель не запущен, я бы хотел, чтобы процесс-отправитель продолжал свое выполнение, даже если сообщение потеряно.
Пытаясь реализовать его с использованием шаблона PUB-SUB, я заметил, что если приемник не работает, отправитель кладет трубку.Например, в следующем исходном коде отправителя:
import zmq
context = zmq.Context()
sender = context.socket(zmq.PUB)
sender.connect("tcp://localhost:5555")
sender.send("Sending to nobody", NOBLOCK)
print "Msg sent"
, когда получатель не работает, сообщение «Сообщение отправлено» никогда не печатается, и отправитель остается в «sender.send» («Отправка никому»)НОБЛОК) "навсегда.Кроме того, я попытался проверить, работает ли получатель, или не получает возврат функции connect , но в обоих случаях это всегда "None".
Я использую Python 2.6.5 и zeromq 2.1
Кто-нибудь знает, что происходит, или альтернативное решение?(Я пробовал использовать PULL-PUSH и REQ-REP, но схожие результаты)
Большое спасибо заранее