Требуется ли для каждой очереди в ZeroMQ свой порт?

Мы стремимся построить фасад в nodejs, который будет принимать запросы от клиента, а затем обрабатывать запросы для ряда сервисов, используя шаблон запроса / ответа для ряда различных внутренних сервисов. Мы хотим, чтобы эти запросы удерживались в отдельных очередях в случае, если один из сервисов бэкэнда не работает. При первоначальном чтении документов ZeroMQ выясняется, что каждая очередь связана с собственным портом. При отправке сообщения в сокет не существует способа присвоения имени очереди или теме для отправки. Существует ли однозначное сопоставление между портами и очередями?

Спасибо том

1 ответ

ZeroMQ не имеет понятия "очереди" или "темы". Ваше приложение состоит из задач, связанных по какому-либо протоколу, например, tcp://, и отправляющих друг другу сообщения в различных шаблонах. В вашем примере одна задача будет привязана к адресу: порт, и рабочие будут подключаться к нему. Затем отправитель отправляет запросы в свой сокет, который раздает их работникам.

Лучший способ изучить ZeroMQ - это проработать хотя бы первые пару глав Руководства, прежде чем разрабатывать собственное приложение. Многие из существующих концепций обмена сообщениями, с которыми вы знакомы, исчезают в более простых шаблонах с ZeroMQ.

Другие вопросы по тегам