Курс: Интеграция в корпоративных системах
Продолжительность курса: 24 ак. ч.
Описание курса:
Прохождение курса позволит увидеть все основные варианты интеграции как независимых систем и приложений, так и отдельных подсистем внутри одной системы.
Такая интеграция может выполняться практически незаметно для самих систем, например использованием BPM-системы для их вызова, или путем экспорта данных из одной и импорта в другую, или путем описания шагов ETL-процесса в соответствующем инструменте.
Но чаще где-то в приложении происходит обращение к чужому сервису, вызов удаленной процедуры и отправка сообщения в очередь, то есть одно приложение целенаправленно взаимодействует с другим. Мы рассмотрим, как разные способы интеграции – синхронные и асинхронные, пакетные и индивидуальные, с ответами и без ответов, так и стандарты, которые позволяют использовать готовые проверенные решения – SOAP, WSDL, REST, HATEOAS, RPC.
Конкретные технологии начнем рассматривать с очередей сообщений, затем выясним, в чем разница (и есть ли она) между брокерами сообщений и корпоративными сервисными шинами (ESB), а также шинами сообщений, шинами данных и интеграционными шинами.
Большой модуль содержит описания паттернов интеграции – не только из соответствующей книжки, но и дополнительные паттерны, которые один из ее авторов (Gregor Hohpe) описал только на своем сайте.
Дополнительно в курсе рассматриваются некоторые шаблоны и анти-шаблоны для обеспечения стабильности интеграционных решений.
Знания, полученные на данном курсе, позволят слушателям строить по-настоящему надежные, легко расширяемые и поддерживаемые интеграционные решения с учетом потребностей бизнеса и неизбежных компромиссов в условиях ограниченных ресурсов.
Аудитория:
Архитекторы, разработчики, руководители разработки.
Необходимая подготовка:
Опыт участия в разработке от 1 года.
Программа курса:
Модуль 1. Обзор
• Интеграция: определение, задачи, обзор основных направлений и технологий (EAI, EII, ETL, SOA), интеграция на разных уровнях: бизнес-логики, презентационном и бизнес-процессов;
• Интеграция на уровне данных: подходы и их ограничения (общая база данных, хранилище данных, витрины данных, федеративные базы данных).
Модуль 2. Интеграционные требования
• Способы сбора и описания, функциональные требования, нефункциональные требования.
Модуль 3. Промышленные стандарты интеграции
• Обзор OASIS, W3C, WS-I; SOAP; REST. Форматы обмена сообщениями: XML, JSON, ProtoBuf, Avro;
• Системы обмена сообщениями и их интерфейсов (AMPQ 0.9, 1.0).
Модуль 4. Инструменты и средства интеграции
• Основные функции; основные производители: Messaging, ESB, ETL, Integration frameworks.
Модуль 5. Шаблоны интеграции приложений (Enterprise Integration Patterns)
• Подходы и шаблоны при реализации функциональных требований;
• Подходы при реализации нефункциональных требований;
• Способы построения сервисов и интеграционных решений, лучшие практики.
Модуль 6. Шаблоны коммуникации приложений
• Подходы и шаблоны при реализации функциональных требований. Подходы при реализации нефункциональных требований. Способы построения сервисов и интеграционных решений, лучшие практики.
Модуль 7. Обеспечение стабильности
• Практики обеспечения стабильности интеграции, и что может привести к печальным последствиям (Dogpile, Slow Responses, Bulkhead, Bounded datasets и другие).
Окончательная цена указывается в договоре на обучение.