Разница между Hub, Spoke и ESB

Я знаю, что по этому вопросу уже есть хороший вопрос, но он не совсем отвечает тому, что я ищу.

Из того, что я понимаю:

1. оба используются в качестве центрального координационного центра между приложениями
2. оба могут использовать маршрутизацию / посредничество / преобразование и т.д. между службами / приложениями

Но единственное отличие, которое я действительно вижу, состоит в том, что концентратор и луч обычно имеют много разных форматов, входящих в концентратор (SOAP/REST/XML/JSON...), в то время как ESB обычно имеет стандартный формат (обычно это просто SOAP).

Кроме того, я продолжаю читать, что центр и говорит вводит единственную точку отказа по сравнению с ESB. Так чем же здесь отличается физическое размещение? Где концентратор имеет все возможные конечные точки и как ESB имеет конечные точки, развернутые в нескольких концентраторах? Таким образом, ESB - это всего лишь несколько хабов (из-за недостатка слов)?

Кто-нибудь может помочь прояснить это для меня?

3 ответа

Решение

Здесь нет точного ответа, так как вы можете говорить о ESB как о конкретном шаблоне проектирования или о дискурсе об эволюции инструментов интеграции программного обеспечения и SOA.

ESB как шаблон проектирования означает, что вы управляете связью между различными службами, используя шину, к которой клиенты могут легко подключаться и отключаться. Обычно это делается путем принуждения их использовать стандартные форматы данных и протоколы, тогда как в Hub и Spoke вы можете использовать настраиваемые соединители и преобразования данных для каждого клиента. Это ограничивает количество проблем, с которыми вы можете столкнуться при запуске нескольких интеграций, но у вас все еще может быть одна точка отказа в ESB.

ESB как дискурс (или маркетинговый термин) является более сложной проблемой, когда люди спорят о том, что такое "Истинный ESB". Некоторые люди говорят, что вам нужна модульная архитектура, в которой вы можете выбрать, какие компоненты вы развертываете, или вам нужно иметь возможность распределять компоненты по разным машинам, чтобы обеспечить масштабирование и отказоустойчивость. В предельном определении вам потребуется развернуть даже ваши преобразователи данных в качестве распределенных сервисов.

Отсюда

ESB - это технология интеграции корпоративного класса следующего поколения, взявшая верх над EAI(hub-spok).

  • Более разумныеконечные точки: ESB обеспечивает архитектуру, в которой больше интеллекта размещается в точке, где приложение взаимодействует с внешним миром. ESB позволяет каждой конечной точке представлять себя как сервис, используя стандарты, такие как WSDL, и устраняет необходимость в уникальном интерфейсе, написанном для каждого приложения. Интеллектуальная интеграция может быть развернута непосредственно на конечных точках (клиентах и ​​серверах). Канонические форматы обойдены в пользу прямого форматирования полезной нагрузки в целевой формат. Этот подход эффективно устраняет большую часть сложности, присущей продуктам EAI.
  • Распределенная архитектура. В тех случаях, когда EAI - это чисто хабовый и спиц-подход, ESB - это легкая распределенная архитектура. Централизованный хаб имеет смысл, когда каждое взаимодействие между программами должно быть преобразовано в канонический формат. ESB, распределяет гораздо больше логики обработки в конечных точках.
  • Нет стеков интеграции: поскольку клиенты использовали продукты EAI для решения большего количества проблем, каждый поставщик добавил стеки фирменных функций, встроенных в продукт EAI. Со временем эти интеграционные стеки стали монолитными и требуют глубокого опыта для использования. ESB, напротив, представляют собой относительно тонкий слой программного обеспечения, к которому могут быть применены другие уровни обработки с использованием открытых стандартов. Например, если пользователь ESB хочет развернуть конкретный инструмент управления бизнес-процессами, его можно легко интегрировать с ESB, используя стандартные отраслевые интерфейсы, такие как BPEL, для координации бизнес-процессов.

Непосредственным краткосрочным преимуществом подхода ESB является то, что он обеспечивает тот же общий эффект, что и подход EAI (концентратор), но при гораздо более низкой совокупной стоимости владения. Эта экономия достигается не только за счет снижения затрат на оборудование и программное обеспечение, но и за счет экономии труда, которая достигается за счет использования распределенной и гибкой структуры.

Я не знаю, имеете ли вы это в виду, когда говорите is physical deployment the difference here? но на самом деле главное различие между Hubs и ESP заключается в том, что different Layer.

Когда мы говорим об ESP, мы обращаемся к software architecture model где как хаб ссылается на строгий hardware connecting topology,

Удачно это hardware topology(коллекция хабов) реализует ESP, но между уровнями связи существует четкая линия.

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