Содержание
- 2. Интеграция – объединение частей в целое
- 3. Каких частей? Информационных систем! - Серверы - Сети - Платформы виртуализации - Операционные системы - Языки
- 4. Наивный подход к Интеграции
- 5. Нужна ли системная интеграция? Одна система Много систем и интеграционный слой VS
- 6. Одна система + Легко настроить мониторинг и отладку + Просто развертывать +/– Весь код в едином
- 7. Много систем и слой интеграции + Ошибки в системах имеют локальный характер + Легче масштабируется +
- 8. Интеграция…?
- 9. Основные подходы к интеграции Файловый обмен
- 10. Принцип работы файлового обмена write("file.txt", "/root/user/docs/") read("/root/user/docs/file.txt")
- 11. Пример из жизни (Файловый обмен) foo@dev:~/ESBData> ll итого 120 -rw-r--r-- 1 foo users 223 Окт 13
- 12. Пример из жизни (Файловый обмен) foo@dev:~/ESBData> cat ats_2017.10.31_09.32.08.542.+0300.xml Value="▒▒▒▒▒▒▒ ▒▒▒▒▒ ▒▒▒▒▒▒▒ ▒▒▒▒▒"/> Value=" 107078, ▒▒▒▒▒▒▒ ▒▒▒▒▒
- 13. Файловый обмен + Работает везде + Лучше защищен от потерь + Слабая связанность – Сложный контракт
- 14. Основные подходы к интеграции ✓ Файловый обмен RPC (Remote Procedure Call) Притворимся, что удаленный вызов на
- 15. Принцип работы RPC int a = add(5, 6) 11
- 16. Принцип работы RPC на самом деле
- 17. RPC + Простое использование + Можно притвориться, что все локально – Сложная конфигурация – Нетривиальная архитектура
- 18. Основные подходы к интеграции ✓ Файловый обмен ✓ RPC (Remote Procedure Call) Общая база данных
- 19. Принцип работы общей БД
- 20. Общая БД + Транзакционность + Персистентность (Сохранение данных при ошибках / катастрофах, etc) + Легкое представление
- 21. Основные подходы к интеграции ✓ Файловый обмен ✓ RPC (Remote Procedure Call) ✓ Общая база данных
- 22. Принцип работы MOM Application C?
- 23. Интеграция
- 24. Интеграция
- 25. Интеграция
- 26. MOM + Слабая связанность + Можно модифицировать отдельно от приложений + Сложная логика взаимодействия систем реализуется
- 27. Основные подходы к интеграции ✓ Файловый обмен ✓ RPC (Remote Procedure Call) ✓ Общая база данных
- 28. Принцип работы Web сервисов HTTP(S) – это жизнь
- 29. Принцип работы Web сервисов HTTP(s) URL: http://my_company/dostuff Внутренняя сеть
- 30. Web сервисы + Синхронны по своей природе + Просты в реализации + Является общепринятым стандартом (Реализованы
- 31. Основные подходы к интеграции ✓ Файловый обмен ✓ RPC (Remote Procedure Call) ✓ Общая база данных
- 32. Наивный подход к Интеграции 2 Файловый обмен RPC Web-service Общая BD
- 33. Наивный подход к Интеграции 2 Файловый обмен RPC Web-service Общая BD
- 34. Шина интеграции (ESB) ESB
- 35. Промежуточное ПО, централизирующие задачи обмена данными между системами Шина интеграции (ESB)
- 36. Как «присоединиться» к шине ESB Адаптер MOM (IBM, JMS, etc.) Адаптер БД (oracle, postgress, etc.) Адаптер
- 37. Пример ESB Адаптер Файлового обмена Адаптер Web сервиса
- 38. Иногда этого не хватает… ESB
- 39. Иногда этого не хватает… ESB Адаптер WS Адаптер DB Адаптер MOM Адаптер MOM Адаптер файлового обмена
- 40. …Иногда появляется система - особая снежинка, которая ничего не умеет И для нее надо делать особый
- 41. API шины интеграции SonicESB import com.sonicsw.xq.XQServiceEx; import com.sonicsw.xq.XQInitContext; class SpecialSnowflakeAdapter implements XQServiceEx { @Override public void
- 42. Обычно возможности обратиться на шину достаточно ESB Адаптер WS Адаптер DB Адаптер MOM Адаптер MOM Адаптер
- 43. … Но иногда не достаточно только попасть на шину Умею работать с XML Умею работать с
- 44. … Но иногда не достаточно только попасть на шину Умею работать с XML Умею работать с
- 45. … Необходимо еще и преобразовать формат Умею работать с XML Умею работать с JSON XML АДАПТЕР
- 46. … или трансформировать сообщение внутри формата Умею работать с XML Умею работать с XML, но с
- 47. Некоторые системы представляют одинаковые данные в разных форматах Проблемы не заканчиваются
- 48. Предоставление единого формата на ESB УНИФИКАТОР ФОРМАТА
- 49. Репликация данных Некоторые данные нужно отправить в несколько систем при этом сделать только 1 вызов
- 50. Репликация данных ESB
- 51. А иногда и дождаться ответа от всех ESB 0 0 0 0 1* 2* 3* 1*2*3*
- 52. Возможности шины интеграции Присоединение систем к единой платформе обмена (Посредствам адаптеров) Преобразования форматов (e.g. XML➞JSON) Трансформации
- 53. Особенности коммерческих ESB ESB Предоставляет MOM, Файловый обмен, БД, Web сервисы, единый API Единая точка конфигурации
- 54. Среда разработки Любое взаимодействие между системами можно представить в виде последовательности действий на шине
- 55. Пример взаимодействия Взять сообщение из базы данных Добавить заголовки basic authentication Преобразовать xml ➞ xml (По
- 56. Пример взаимодействия Сообщение берется из БД особым адаптером - Gateway Добавить заголовки basic authentication Преобразовать xml
- 57. Сегодня мы узнали Что интегрировать приложение между собой сложно, но возможно
- 58. Основные подходы к интеграции ✓ Файловый обмен ✓ RPC (Remote Procedure Call) ✓ Общая база данных
- 59. Особенности коммерческих ESB ESB Предоставляет MOM, Файловый обмен, БД, Web сервисы, единый API Единая точка конфигурации
- 60. Тема ESB и интеграции на этом не исчерпана Более подробно можно узнать, попав к нам на
- 61. Список литературы Шаблоны интеграции корпоративных приложений. : Пер. с англ. М.:ООО ‘‘И.Д. Вильямс’’. Мартин Фаулер. Шаблоны
- 63. Скачать презентацию