Tibco RV параметры отправки и прослушивания перепутаны
Привет, я новичок в Tibco RV. После прочтения Концепции Tibco Rendezvous я все еще не могу понять параметры транспорта: сервис, сеть, демон.
Таким образом, концептуально на каждой машине работает только один демон. Так что при использовании тибрвсенд:
tibrvsend -service 2323 -network "someIPAddress" -daemon "myDaemon" MESSAGE
Означает ли это, что я отправляю сообщение через порт 2323 на моем локальном хосте через демон myDaemon
(который может быть на удаленном), к сети comeIPAddress
?
При использовании tibrvlisten:
tibrvListen -service 2323 -network "someIPAddress" -daemon "myDaemon"
Означает ли это, что я слушаю, используя любой доступный порт, любой доступный демон на моем локальном хосте, чтобы прослушать сообщения от порта 2323 myDaemon
"что опубликовано someIPAddress
сеть?
Другой вопрос, в книге "Концепция Tibco RV" упоминается, что один и тот же сервис не может быть привязан к двум сетям. Это относится только к машинам-производителям (поскольку мы не указываем порт для машины-слушателя)? Так что ошибка произойдет, если мы сделаем:
tibrvsend -service 2323 -network "net1" MESSAGE
а также
tibrvsend -service 2323 -network "net2" MESSAGE
в то же время (должно быть в порядке, если мы делаем это последовательно, верно?)
но для слушателей:
tibrvlisten -service 2323 -network "net1"
а также
tibrvlisten -service 2323 -network "net2"
должно быть прекрасно? (иначе это означает, что производители должны знать номер порта друг друга, чтобы избежать конфликта)
Если я полностью напутал с понятиями, не могли бы вы объяснить с примерами?
2 ответа
Так что концептуально на каждой машине работает только один демон
Вы можете запустить несколько демонов на одной машине, но это не обязательно. Вы можете получить доступ к нескольким логическим шинам на одном демоне, изменяя параметры службы и сети.
Демон - это фактический процесс, выполняющийся на вашем компьютере для обработки сообщений Rendezvous. Ваши клиенты будут подключаться к этому демону с помощью параметра daemon. Например, значение по умолчанию tcp:7500
получит доступ к демону на локальной машине через порт 7500, тогда как значение tcp:server.domain.com:8000
получит доступ к демону на удаленной машине (server.domain.com) через порт 8000.
Пример: если вы выполните tibrvlisten -daemon tcp:8000
вы заметите, что на машине запущен новый процесс (rvd.exe в Windows, rvd в Unix), прослушивающий порт 8000.
Параметры службы и сети, в свою очередь, являются параметрами многоадресной рассылки (см. http://en.wikipedia.org/wiki/Multicast). Для упрощения вы можете рассматривать их как довольно абстрактные значения с двумя важными аспектами:
- Производитель и получатель сообщений должны быть настроены на использование одной и той же пары сеть / сервис.
- Вы не должны повторно использовать сервис для нескольких сетей, так как этот конфликт вызовет проблемы.
В отношении Rendezvous следует помнить также, что многоадресные сообщения принимаются всеми машинами в одной подсети. Если вам нужно отправлять сообщения в другие подсети, вам следует рассмотреть возможность использования демонов маршрутизации Rendezvous (RVRD).
Служба: это порт udp, TRDP (Tibco Reliable Data-gram Protocol) на основе протокола udp.
Демон: TCP-порты, используемые процессом RVD. Прикладные программы взаимодействуют с процессом RVD через порты TCP. RVD использует порт TCP для получения сообщений и отправки их через порт udp.
сеть: IP-адрес класса E, это многоадресный IP-адрес