OpenESB - это служебная шина предприятия с открытым исходным кодом на основе Java. Его можно использовать как платформу для интеграции корпоративных приложений и сервис-ориентированной архитектуры. OpenESB позволяет интегрировать унаследованные системы, внешних и внутренних партнеров и новые разработки в ваш бизнес-процесс. OpenESB - это уникальная ESB с открытым исходным кодом, основанная на стандартных JBI ( Java Business Integration ), XML , XML Schema , WSDL , BPEL и приложении Composite, которое обеспечивает простоту, эффективность, долгосрочную надежность и экономию ваших нынешних и будущих инвестиций. с очень низкой совокупной стоимостью владения .
Разработчики) | Сообщество OpenESB, ранее Sun Microsystems |
---|---|
Стабильный выпуск | v 3.2.4 [1] / 1 июня 2020 г. |
Предварительный выпуск | v 3.1.4 [2] / 1 марта 2019 г. |
Написано в | Ява |
Операционная система | Кроссплатформенность : поддерживается Windows Mac OS Linux |
Тип | Платформа интеграции Microservice Enterprise Service Bus |
Лицензия | CDDL |
Веб-сайт | http://www.open-esb.net/ |
Раньше он принадлежал Sun Microsystems , но после слияния Oracle и Sun Microsystems (см. Приобретение Sun компанией Oracle ) было создано сообщество OpenESB для обслуживания, улучшения, продвижения и поддержки OpenESB. [ необходима цитата ]
Архитектура
OpenESB состоит из 5 частей: фреймворка, контейнера, компонентов, интегрированной среды разработки и подключаемых модулей разработки.
Фреймворк
Фреймворк состоит из облегченной реализации JBI на Java. Эта реализация не зависит от контейнера и может работать на любой платформе и любом контейнере. Даже если разработка и поддержка в основном сосредоточены на платформах Glassfish V2 и V3, бета-проекты на JBoss и автономной JVM работают хорошо и находятся в стадии разработки (2012 Q2). Помимо того, что платформа OpenESB легковесна, она также надежна и хорошо масштабируема. Он встроен в виртуальную машину Java и взаимодействует с другими экземплярами фреймворка через компоненты привязки. Эта архитектура идеально сочетается с новыми облачными архитектурами и позволяет легко развертывать и управлять очень сложными инфраструктурами. Фреймворк полностью управляем с помощью любого инструмента на основе JMX, такого как Jconsole, или более сложных инструментов, таких как Opsview или Nagios.
Платформа реализует виртуальную шину, известную как маршрутизатор нормализованных сообщений (NMR). Это мощный асинхронный интеллектуальный канал связи между компонентами.
Составные части
Спецификация JBI определяет 2 типа компонентов: механизм служб (SE) и компонент привязки (BC). SE и BC реализуют один и тот же интерфейсный контракт, однако ведут себя по-разному:
- Компоненты привязки действуют как интерфейс между внешним миром и шиной, имея возможность генерировать сообщения шины при получении стимулов от внешнего источника или генерировать внешнее действие / взаимодействие в ответ на сообщение, полученное с шины.
- Сервисные движки получают сообщения из шины и отправляют сообщения в шину. SE не имеют прямого контакта с внешним миром. Они полагаются на шину для взаимодействия с другими компонентами, будь то связывающие компоненты или другие сервисные механизмы.
OpenESB включает в себя множество компонентов «из коробки».
Компоненты привязки OpenESB
Имя компонента привязки | Описание | Поддерживается |
---|---|---|
HTTP BC | Отправляет и получает сообщения через HTTP (получение, публикация, ...) | да |
SOAP BC | Отправляет и получает сообщения SOAP через HTTP | да |
FTP BC | Отправляет и принимает сообщения с FTP-серверов и на них. | да |
База данных BC | Полный доступ к базе данных через JDBC | да |
JMS BC | Отправляет и получает сообщения от брокеров JMS и на них | да |
LDAP BC | Полный доступ к серверу LDAP | да |
Электронная почта BC | Принимает сообщения от серверов POP, IMAP и отправляет сообщения на SMTP-сервер | да |
ОТДЫХ BC | Предоставляет и вызывает службы через канал REST | да |
HL7 BC | Используется для связи с приложениями здравоохранения по протоколу HL7. | да |
TCP / IP BC | Использовать TCP / IP для отправки и получения сообщений | да |
Планировщик BC | Планировщик на базе Quartz для запуска любого бизнес-процесса | да |
Bespoke BC | Вы можете разработать свой собственный компонент привязки | По запросу, по требованию |
Сервисные движки OpenESB
Имя сервисной системы | Описание | Поддерживается |
---|---|---|
BPEL SE | Масштабируемый оркестратор на основе BPEL 2.0. | да |
XSLT SE | Встроенный XSLT в бизнес-процессы | да |
IEP SE | Интеллектуальный обработчик событий | да |
POJO SE | Превратите любой класс Java в компонент OpenESB | да |
JEE SE | Преобразуйте любой EJB или сервлет в компонент OpenESB | да |
WLM SE | Обеспечивает управление задачами и вмешательство человека в бизнес-процесс | По запросу, по требованию |
ETL SE | ETL для OpenESB | По запросу, по требованию |
Bespoke SE | Вы можете разработать свой собственный сервисный движок | да |
Интегрированная среда разработки и плагины
OpenESB предлагает набор графических инструментов для упрощения сложных SOA и интеграционных разработок. Вместе с OpenESB предлагаются мощные XLM, XML-схемы, WSDL, редактор BPEL, отображение данных и графические редакторы Composition Applications. Точно так же задачи сборки, развертывания, отмены развертывания, запуска, тестирования и отладки управляются с помощью графических инструментов. OpenESB обеспечивает лучшую эргономику для разработки ESB и SOA.
Контейнер
OpenESB V3.1.2 не использует никаких контейнеров, а только JVM. Таким образом, его объем памяти очень невелик (менее 300 Мо) и позволяет OpenESB работать в Raspberry PI или во многих случаях в облаке. Следующие версии запланированы на 2019 год.
Сообщество OpenESB
В таблице ниже перечислены веб-сайты и форумы, управляемые сообществом OpenESB.
Веб-сайт | Описание |
---|---|
Портал сообщества | Информация, загрузка события, документация, блог, форум ... |
Репозиторий исходников | Весь исходный код и сборки: требуется регистрация |
Форум сообщества OpenESB | Технический форум с тысячами сообщений |
Группа OpenESB в LinkedIn | Обсуждения на OpenESB |
Смотрите также
- Сервисно-ориентированная архитектура (SOA)
- Архитектура сервисных компонентов (SCA)
- Apache Camel
- Apache CXF
- Системная интеграция
- Корпоративная служебная шина
- Шаблоны корпоративной интеграции
- SOA, управляемая событиями
- Java CAPS
- eclipse sirius - бесплатный инструмент eclipse под лицензией GPL для создания собственных произвольных сложных инструментов моделирования военного уровня за один час
- eclipse SCA Tools - составной инструмент без GNU
- Бесплатный обеодизайнер под лицензией GPL, созданный с помощью eclipse sirius
Рекомендации
Бизнес-интеграция с Java
Спецификация JBI
Внешние ссылки
- OpenESB проект
- Pymma OpenESB Enterprise Edition, Консультации, обучение, проектирование архитектуры, разработка и глобальная круглосуточная поддержка
- LogiCoy OpenESB Разработка, консультирование и глобальная круглосуточная поддержка
- Youtube - NetBeans Open ESB SOA Tools, составное приложение, CASA
- Краткое руководство к редактору NetBeans Open ESB CASA Editor
- https://soa.netbeans.org/