View
58
Download
2
Embed Size (px)
Citation preview
Интеграционные решения – развиваемся дальше
Михаил Чариков,
архитектор интеграционных решений
Москва, 27.06.2013
2
СОДЕРЖАНИЕ
Governance – управление интеграционным решением
Репозитории и реестры сервисов
Мониторинг интеграционного решения
Семантическая интеграция
Complex Events Processing
1.
2.
3.
4.
5.
1 2 3 4 5
GOVERNANCE – УПРАВЛЕНИЕ ИНТЕГРАЦИОННЫМ
РЕШЕНИЕМ
4 1 2 3 4 5
GOVERNANCE – УПРАВЛЕНИЕ И КОНТРОЛЬ
• Система управления:
• Правила и инструкции
• Процессы
• Люди и роли
• Метрики
• Отвечают:
• Специалисты по системе управления
• Enterprise-архитекторы
• Системные администраторы
• Другие специалисты
5 1 2 3 4 5
ПРОЦЕСС УПРАВЛЕНИЯ ИНТЕГРАЦИОННЫМ
РЕШЕНИЕМ
• Цикличный процесс
• Взгляд на существующее решение в целом.
• Анализ реестра существующих сервисов
• Моделирование и дизайн новых сервисов
• Разработка сервисов
• Тестирование сервисов
• Деплоймент и поддержка сервисов
• Мониторинг сервисов
• Обнаружение новых сервисов
• Избавление от ненужных и устаревших сервисов
1 2 3 4 5
SERVICE REGISTRIES AND REPOSITORIES
7 1 2 3 4 5
SERVICE REGISTRIES AND REPOSITORIES - 1
• Хранения метаданных сервисов для решения задачи обнаружения сервисов
• Описание сервиса
• Ключевые слова
• Указатели на контракты сервисов
• Хранение прочих артефактов
• Спецификации на сервис, описание SLA
• XSD-схемы
• Модели данных
• Код (java, BPEL, и т.п.)
• Аналитические документы
8 1 2 3 4 5
SERVICE REGISTRIES AND REPOSITORIES - 2
Каталог, служащий для обнаружения сервисов
• В design-time
• предоставляя удобный GUI
• В run-time
• соответствуя стандартам (UDDI - Universal Description Discovery & Integration)
• Предоставляя собственный API
9 1 2 3 4 5
ДИНАМИЧЕСКАЯ МАРШРУТИЗАЦИЯ
• Обнаружение сервисов в run-time
• По имени
• По произвольным дополнительным параметрам, например, по типу документа
1 2 3 4 5
МОНИТОРИНГ ИНТЕГРАЦИОННОГО РЕШЕНИЯ
11 1 2 3 4 5
ЖУРНАЛИРОВАНИЕ - 1
• Система журналирования
• Журналирует request\response сервисов (либо факты вызовов, либо полностью тело сообщения)
• Хранит журналы в БД
• Интеграционные продукты как правило имеют встроенную систему журналирования
• Встроенная система может не устраивать по причинам:
• Производительность\надежность
• Полнота журналируемой информации
• Удобство доступа к информации
• Собственноручно написанная система журналирования – ОК.
12 1 2 3 4 5
ЖУРНАЛИРОВАНИЕ - 2
• Система журналирования помогает
• Оперативно разобраться в случившейся проблеме
• Определить и наказать виновных
• Система журналирования НЕ помогает
• Оперативно обнаружить ошибки. Как правило от ошибок мы узнаем от пользователей.
13 1 2 3 4 5
ТЕХНОЛОГИЧЕСКИЙ МОНИТОРИНГ
• Управление сервисами – проверка значений метрик нашим задекларированным правилам. Примеры метрик:
• Количество вызовов сервиса.
• Количество данных, проходящих через сервис.
• Количество исключений, возвращаемых сервисом.
• Количество потребителей сервиса
• Количество инстансов сервиса.
• Биллинг сервиса
• Отслеживая метрики мы вовремя замечаем нарушение SLA и можем принять меры до того момента, как что-то сломается или нанесет вред.
14 1 2 3 4 5
БИЗНЕС-МОНИТОРИНГ
• BAM – Business Activity Moitoring
• Мониторинг непосредственна данных, которые ходят внутри нашего интеграционного решения.
• Требования к мониторингу формируются бизнесом либо явно, либо как требования – доказать эффективность сервиса.
• BAM и Технологический мониторинг могут быть реализованы в рамках одной системы, а могут быть двумя разными.
1 2 3 4 5
СЕМАНТИЧЕСКАЯ ИНТЕГРАЦИЯ
16 1 2 3 4 5
СЕМАНТИЧЕСКАЯ ИНТЕГРАЦИЯ
• Не получилось создать идеальный SOA-ландшафт
• Много старых (legacy) систем, не понимающих друг друга
• Реализация БОЛЬШОГО количества трансформаций при организации взаимодействия между системами
• Продукты, обеспечивающие семантическую интеграцию
17 1 2 3 4 5
СЕМАНТИЧЕСКАЯ ИНТЕГРАЦИЯ – ЗАЧЕМ?
• Системы семантической интеграции
• Позволяют вести в одном месте и в одном формате информацию о моделях данных систем и о канонической модели в едином виде
• Дают мощный визуальный инструмент аналитику для проектирования трансформаций
• Спроектированные трансформации работают без участия программиста и представлены в виде сервисов
• Инструмент для анализа и поддержки изменений моделей данных
18 1 2 3 4 5
СЕМАНТИЧЕСКАЯ ИНТЕГРАЦИЯ – ПОДДЕРЖКА
ПРОМЫШЛЕННЫХ СТАНДАРТОВ
• Поддержка промышленных стандартов: SWIFT, EDA, FIX, …
• Форматы описаны и с ними работают мапперы в XML и из XML
• Есть набор готовых валидаторов, которые проверяют корректность сообщений по отношению к стандарту
• Компания получает обновления стандартов, как только они выходят
1 2 3 4 5
COMPLEX EVENTS PROCESSING
20 1 2 3 4 5
COMPLEX EVENTS PROCESSING – ЧТО ЭТО?
• Событие – это элементы данных, которые содержат в себе описание состояний программных или реальных объектов.
• События повсюду. Их производят
• Приложения, процессы или сервисы
• Банкоматы, Call-центры, GPS-приемники, RFID-датчики
• Инфраструктура предприятия
• Природа
• Комплексное событие – это набор атомарных событий, произошедших (или не произошедших) в определенной последовательности в определенный временной период.
21 1 2 3 4 5
АНАЛИЗ СОБЫТИЙ ПРИ ПОМОЩИ BI
• Перед бизнесом стоит задача в анализе произошедших событий и некоторой реакции на результаты анализа
• Мы можем записывать интересующие нас события в базы данных и анализировать их при помощи BI-систем
• Но такой анализ происходит заметно позже наступления события
• Следовательно и реакция на событие может быть запоздалой.
22 1 2 3 4 5
АНАЛИЗ СОБЫТИЙ ПРИ ПОМОЩИ COMPLEX
EVENTS PROCESSING
• CEP – класс систем, реализующих обработку событий в режиме реального времени.
• Нахождение комплексного события в потоке атомарных событий и реакцию на это событие
• События обрабатываются и хранятся в памяти, а не в БД
• Обработка большого объема событий (десятки тысяч в секунду)
• Задача разработчика
• Реализовать адаптер для каждого вида событий
• Описать на логическом языке шаблон комплексного события
• Реализовать реакцию на найденной событие
23 1 2 3 4 5
COMPLEX EVENTS PROCESSING VS ВСТРОЕННЫЕ
РЕШЕНИЯ
• Многие коробочные продукты (кард-процессинг, логистические пакеты) уже предоставляют схожие механизмы. Зачем нам нужно что-то отдельное?
• Преимуществом отдельно стоящей CEP-системы может являться гибкость и скорость разработки собственных паттернов комплексных событий
• Некоторые CEP-системы обладают пользовательским интерфейсом, ориентированным на бизнес-аналитиков, что позволяет в некоторых случаях исключить разработчиков из цепочки создания новых паттернов.
• Составное ядро интеграционного, SOA и BPM-решения
24
ИНТЕГРАЦИОННЫЕ РЕШЕНИЯ – РАЗВИВАЕМСЯ
ДАЛЬШЕ
Михаил Чариков
Архитектор интеграционных решений
111033, Москва, ул. Волочаевская, д.5, корп.1 +7 495 974 2274, +7 495 974 2277 (факс)
[email protected] www.croc.ru