Прямое сообщение брокера ZeroMQ

#c #sockets #zeromq #broker

#c #розетки #zeromq ( нулевой код ) #брокер #сокеты

Вопрос:

Я разрабатываю распределенное приложение с использованием ZeroMQ. Я хочу реализовать брокера для передачи сообщений на централизованном хосте.

Представьте, что серверные клиенты запрашивают что-то на данном сервере. Пример в руководстве по ZeroMQ, несколько клиентов, запрашивают что-то на сервере и какой-то незанятый работник выполняет работу и отвечает на запрос.

Мне нужно, чтобы запрос был направлен. Я имею в виду, я хочу, чтобы этот сервер 5 (например) выполнял эту работу. Это использование посредника в середине для централизации связи на одном хосте.

Есть идеи?

Редактировать

Я нарисовал картинку:https://docs.google.com/drawings/d/1kyh6agIG_3FsllPURSjJFTHGjv-Yg92mfOiTmCdEsO8/edit?usp=sharing
пример связи

Разница (я думаю) между моим case2 и примером брокера балансировки нагрузки в руководстве заключается в том, что брокеры назначают запрос первому свободному работнику. Мне нужно сделать запрос к определенному серверу. Надеюсь, теперь это понятно.

ПРАВКА2

Еще более понятно. Мне нужен именно этот пример. Но я не вижу, как клиент запрашивает определенный сервер. Я запускаю пример, но на все запросы отвечает первый незанятый сервер.

Комментарии:

1. Можете ли вы нарисовать картину того, что вы ищете? Можете ли вы объяснить, почему или как примеры или шаблоны в главе 4 не будут работать для вас? Начните с примера, на который вы ссылались, и расскажите нам, почему он не будет работать для ваших нужд.

2. @Jason, представьте себе простейший запрос REQ_REP. 1 клиента, запрашивающего 1 сервер, использующий 1 tcp-порт. Теперь мне нужен n1 клиент, запрашивающий n2 сервера, но использующий 1 порт. Какой подход является наилучшим?

Ответ №1:

Нашел это!!

Это именно то, что мне нужно. http://arslan.io/zeromq-request-slash-reply-to-a-specific-server-via-router-router-broker-in-go

Я надеюсь, что это кому-то поможет

Комментарии:

1. ссылка мертва, и мне отчаянно нужно это знать, можете ли вы поделиться, если она у вас есть. gmate.sunny@gmail.com