Я прочитал это: http://api.zeromq.org/4-3:zmq-socket и, насколько я понимаю, ни один из типов сокетов не подходит близко к требованиям, которые, я думал, были простыми ... По сути, я хочу, чтобы ZMQ работал точно так же, как NATSработает (у меня просто нет достойного клиента для NATS, в противном случае я бы использовал его).
Итак, для описания проблемы: у меня есть главный узел и несколько подчиненных узлов.Мастер должен отправлять сообщения на узлы и получать ответы асинхронно / вне пределов (т.е. должна быть возможность отправить более одного сообщения до получения ответа).Все подчиненные узлы уникальны.Т.е. не может быть и речи о циклическом переборе, честном размещении в очереди и т. Д.: Каждый раб должен получать назначенное сообщение (иногда есть группы рабов, которым всем нужно получать одно и то же сообщение).
Это также может быть полезнодля рабов, чтобы говорить друг с другом (не обязательно напрямую, может быть, через мастера).Но, если это невозможно из коробки, я, вероятно, согласился бы построить его поверх чего-то другого, при условии, что будут выполнены другие требования.
Пока я смотрел на SERVER
/ CLIENT
pair и DEALER
/ ROUTER
, но ни один из них на самом деле не работает из-за того, как они отправляют сообщения случайным адресатам.