Как настроить несколько издателей и подписчиков с помощью транспорта TCP. Я подозреваю, что вы не делаете автоматическое создание сетки / шины. Так что каждому издателю нужна уникальная точка привязки IP-адреса, верно? Они просто подключают подписчиков к каждому издателю через один сокет.
(это обсуждалось в: https://www.freelists.org/post/nanomsg/does-nanomsg-support-multi-producer-in-pubsub-mode,10)
Это в принципе правильно?
Причина, по которой я склоняюсь к пабу / сабву по подходу шины / сетки, заключается в том, что (и я допускаю, что вполне могу ошибаться) -
- Мне не нужна полностью подключенная сетка
- Я полагаю, что фильтрация по основному дереву в каждом узле лучше, чем я бы придумал
- Мне нравится аспект "автоматического обнаружения" pub / sub, а не ручная разводка сетки для автобусных транспортов
- (т.е. автоматический «вход и выход из сетки»)
В основном у меня есть 2 продюсера (которые в основном публикуют, но могут время от времени получать запросы на добавление дополнительной информации в публикуемый поток, поэтому им нужно слушать)
И затем около пяти потребителей, которые в основном получают поток данных от издателей, но должны периодически отправлять запросы производителям.
И да, я хочу, чтобы паб был асинхронным, а также recv () для подписки (в контексте, где я это использую, блокировка запрещена).
Итак, это двунаправленная архитектура паб / саб. И я смотрю на самый простой способ реализовать это. (движение довольно легкое).
Конечно, транспорт UDP был бы хорош для этого, но я не задерживаю дыхание.