Что такое брокер, тема, очередь
Я пытался найти подробности о брокере, теме, очереди; но не смог получить хорошие результаты. Я пытался Google на эти темы, но не мог найти много. Может кто-нибудь помочь объяснить эти понятия.
1 ответ
Это правда, что найти простой ответ немного сложно.
Я нашел эту страницу Red Hat с двумя простыми диаграммами, объясняющими принципы JMS. Поскольку TIBCO EMS ТАКЖЕ является реализацией JMS, применима та же теория о очереди и темах.
Чтобы быть еще более "ориентированным на TIBCO" в моем ответе, пожалуйста, обратитесь к страницам 3 и 4 Руководства пользователя EMS ( последняя версия).
Подвести итоги:
Очереди
- Используются для моделей обмена сообщениями типа "точка-точка" (это не означает, что целое интеграционное решение должно рассматриваться как точка-точка, вы можете сделать хороший EAI с очередями).
- Они обычно хранят сообщения, даже если ни один из них не подключен.
- Они могут быть использованы для асинхронной связи (например, производитель и потребитель не доступны одновременно), распределения нагрузки (т. Е. Если несколько пользователей получат сообщение, только один получит сообщение) и общей интеграции на основе сообщений ( см. Эту книгу).
темы
- В основном используются для моделей обмена сообщениями "публикация-подписка".
- Обычно, если у них нет подписчиков, все опубликованные сообщения "теряются" (по замыслу). Долгосрочная подписка может компенсировать это и, по сути, составляет "очереди подписчиков pub-sub".
Примечание. В EMS очереди и темы могут быть "соединены" "мостами", чтобы обеспечить еще большую функциональность. Другие продукты имеют схожие характеристики.
Маклер
Брокер обычно ссылается как на шаблон " Message Broker" из вышеприведенной ссылки на книгу, так и на специализированные продукты. Как правило, "брокер" - это роль "интеллектуального менеджера интеграции", предоставляемая BusinessWorks (или аналогичным продуктам, таким как webMethods IS или IBM Integration Bus / Websphere Message Broker). Эти продукты обычно являются центральными для любого проекта ESB/EAI, поскольку они связывают систему обмена сообщениями с отображением, языками программирования (проприетарными или открытыми, такими как Java) и адаптерами для конкретных систем (мейнфрейм, ERP и т. Д.)