Я реализую систему обмена сообщениями, в которой внешние программы, называемые агентами, могут взаимодействовать через производителей ZeroMq. Таким образом, каждый раз, когда возникает интересное событие, агент отправляет сообщение в ZeroMq.Схема трубопровода ZeroMQ
Я заинтересован в реализации этого, используя шаблон трубопровода.
Я нашел несколько примеров (диспетчер работника-вентилятора), но компонент Ventilator создает конечную точку для приема соединений от рабочего и затем отправляет все сообщения в пакетном режиме.
Мой сценарий совсем другой. «Агент» подключается каждый раз, когда событие требуется для отправки - оно не ждет соединений от рабочих, поэтому мне интересно, возможно ли это? Кроме того, важным фактом является то, что сообщения должны обрабатываться для отправки.
Это может быть хорошим решением, за исключением того, что здесь мне не нужна двунаправленная передача. Агент не должен знать, было ли сообщение доставлено брокеру - ему просто нужно отправить его. – Nedo
Я не уверен, но [AFAIK] (http://en.wiktionary.org/wiki/AFAIK) не существует понятия однонаправленных сокетов в ZeroMQ. Если ваши агенты REQ необходимо поддерживать связь с брокером, просто закрывайте сокет каждый раз, когда отправляется событие. –