Пытаюсь настроить "инвертированный" PUB / SUB с ZeroMQ.
Означает, что подписывающие (SUB) сокеты принадлежат нескольким долгоживущим серверам, выполняя zmq_bind ()
; сокет публикации (PUB) является недолговечным клиентом и выполняет zmq_connect ()
.
Я использую единственный сокет ipc: //
.
Я ожидаю, что сообщение от издателя достигнет каждого из подписчиков.
Проблема: только один из процессов подписчика когда-либо получает сообщения. Если этот процесс завершается, издатель застревает в zmq_term ()
.
Поддерживается ли этот режим операций zmq? Если да, то что я делаю не так? Если нет, то как реализовать то, что мне нужно?
Минимальный пример с некоторыми дополнительными деталями (в Lua, но это не имеет значения): https: //gist.github. com / 938429