4.39M
Category: softwaresoftware

Service-oriented architecture (SOA) - сервис-ориентированная архитектура

1.

SOA
Service-Oriented Architecture

2.

ОПРЕДЕЛЕНИЕ SOA
SOA (service-oriented architecture) - сервис-ориентированная архитектура.
Это не технология, а философия, концепция, парадигма, новый подход к
построению корпоративных информационных систем, интеграция бизнеса и
информационных технологий.

3.

ИСТОРИЧЕСКАЯ СПРАВКА
Понятие SOA было введено Стивом Бурбек в конце ХХ века.
Web-сервис – программная
система, идентифицируемая
строкой URI, чей общедоступный
интерфейс определен на языке
XML.

4.

ТРЕХЗВЕННАЯ СХЕМА СТИВА БУРБЕКА

5.

ОСНОВНЫЕ ИДЕИ SOA ПО БУРБЕКУ
2004-2007: «Сложность и эволюция компьютерных систем,
биологические принципы для управления эволюционирующими
системами»

6.

СПЕЦИАЛИЗАЦИЯ
Клеткам при развитии определяется специализация,
которая сохраняется с ними на протяжении всего
жизненного цикла.
Распределение функциональности между
веб-сервисами.
Вызов веб-сервиса из любой «точки»
распределенной архитектуры.

7.

ПОЛИМОРФИЗМ
Передача информации не через ДНК,
а через «молекулы-посыльные».
Значение сообщения определяется
принимающей клеткой, а не отправителем.
Сообщения передаются по протоколам
или через сервисную шину.
Обмен данными диктуется принимающей
стороной.

8.

АДАПТАЦИЯ
Способность многоклеточных организмов
выстраивать структуры в зависимости от
условий окружающей среды и под ее
влиянием (кости, панцири и т.п.)
Веб-сервисы могут быть вызваны разными
смежными системами.

9.

РЕГЕНЕРАЦИЯ
Каждая клетка в многоклеточном
организме готова к отмиранию.
Замена устаревших модулей и внедрении
новых приложений на одной платформе.

10.

«ПРЕДШЕСТВЕННИКИ»
CORBA ([коо рба/к оо бра]; Common Object Request Broker Architecture) —
технологический стандарт написания распределённых приложений,
продвигаемый консорциумом (рабочей группой) OMG и соответствующая
ему информационная технология.
DCOM ( Distributed COM) — расширение COM для поддержки связи
между объектами на различных компьютерах по сети.
COM (Component Object Model) — это технологический стандарт от
компании Microsoft, предназначенный для создания программного
обеспечения на основе взаимодействующих компонентов объекта, каждый
из которых может использоваться во многих программах одновременно.

11.

ТЕХНОЛОГИИ
XML (Extensible Markup Language) - расширяемый язык разметки.
WSDL (Web Services Description Language)- язык описания веб-служб.
SOAP (Simple Object Access Protocol)— простой протокол доступа к
объектам.
UDDI (Universal Description Discovery & Integration) — инструмент для
расположения описаний веб-сервисов для последующего их поиска другими
организациями и интеграции в свои системы.

12.

ПРИНЦИПЫ SOA
1. Сервисы как компоненты ИС
2. Специализация
3. Низкая связанность (loose coupling)
Сервис - независимый программный компонент, выполняющий
определенную задачу.

13.

ПРИМЕР ИС, ПОСТРОЕННОЙ НА ОСНОВЕ SOA

14.

CЕРВИСНЫЙ БРОКЕР (SERVICE BROKER)

15.

Microservices

16.

«Microservices are small, autonomous
services that work together»
Sam Newman

17.

18.

Масштабируемость
команда разработки микросервиса может
масштабировать свой компонент во время
исполнения независимо от других
микросервисов

19.

Устойчивость
Отельные пространства исполнения
обеспечивают
независимую
от
падений других компонентов системы
устойчивость

20.

Гибкость
Поскольку микросервис - это всего лишь
другой компонент где-то в компьютерной
сети,
его
можно
разрабатывать
с
использованием наиболее подходящего для
реализуемой функциональности языка

21.

Polyglot Persistence

22.

Кросс-функциональная
команда

23.

Продуктивность
«Вы разработали, вам и поддерживать»

24.

Микросервисное приложение выставляет наружу точно
такие же интерфейсы, как и монолит

25.

Путь к микросервисам

26.

С. Ньюмен «Создание микросервисов»
- Скрытие подробностей реализации
- Полная децентрализация
- Независимое развёртывание
- Сначала потребитель
- Изолирование сбоев

27.

Назначение: создать единое общее корпоративное 
приложение из нескольких специализированных 
приложений

28.

Архитектура равиоли

29.

Умные приемники и глупые каналы
передачи данных
Приложения получают
запросы, применяют
логику и отправляют
ответ

30.

СПАСИБО ЗА ВНИМАНИЕ!
English     Русский Rules