Архитектура - Entaxy
Entaxy изнутри
Основной принцип построения архитектуры Entaxy - это понятность для аналитика. Всё начинается с профиля системы: для каждой информационной системы, которая подключается к шине, создаётся свой профиль. В профиле определяется, как информационная система будет общаться с Entaxy - это определяет набор коннекторов, созданных в профиле системы. Участие разработчика ограничивается созданием этих коннекторов к информационным системам. Для каждой системы, зарегистрированной в шине, создаётся маршрут по умолчанию: маршрутизация сообщений в нём происходит на основе служебных заголовков. Для системы можно определить свой индивидуальный маршрут вместо маршрута по умолчанию. В результате, проектируя маршрут, мы оперируем терминами, которые понимает аналитик.
entaxy
Entaxy изнутри
Кратко:
- Подход к интеграции в понятных терминах
- Профили и коннекторы
- Адаптеры и соединения
- Автоматическое преобразование
- Универсальный коннектор

Entaxy снаружи
В основе Entaxy лежит OSGI фреймворк - например, Apache Felix, который реализует спецификацию OSGI, позволяя запускать независимые модульные приложения (бандлы). Контейнером для запуска является Apache Karaf - он даёт возможность управления, администрирования и мониторинга и логирования бандлов. Karaf Cave и Karaf Cellar дают возможность организации репоизиториев бандлов и кластеризации соответственно. Над Apache Karaf расположены модули, определяющие среду выполнения интеграционных маршрутов: это Apache Camel - мощнейших движок для построения интеграций, Apache CXF - движок для создания веб-сервисов (SOAP, REST), Eclipse Jetty - веб-сервер и контейнер сервлетов и другие. Над этим слоем построено наше решение Entaxy, которое включает универсальный сервис, централизованную обработку ошибок, инфраструктуру для подключений к внешним системам (СУБД, файловые хранилища, брокеры сообщений), инфраструктуру для подключения к информационным системам через адаптеры, профили и коннекторы, реализацию протокола OData и многое другое. В платформу заложены гибкие возможности расширения и модуль OData добавлен при помощи этих возможностей (extras).
entaxy
Entaxy снаружи
extras
Дополнительные модули (приложения) на платформе Entaxy, реализующие конечный функционал
|
||||||||
platform
Компоненты, обеспечивающие инфраструктуру систем, коннекторов, адаптеров, соединений с внешними модулями, единый слой обработки ошибок, механизмы развертывания компонентов на лету, универсальный интерфейс.
|
modules
Платформы, приложения и отдельные бандлы, обеспечивающие функционал времени исполнения: публикация веб-сервисов, медиация сообщений, взаимодействие с БД и брокером сообщений, конфигурирование компонентов....
|
|||||||||
Контейнер, предоставляющий слой управления бандлами, репозиторий бандлов, кластеризацию, базовые механизмы построения, управления и развертывания приложений OSGI
|
|||||||||
Архитектура приложений на основе модулей (бандлов OSGI)
|