Слайд 1Service-Oriented Architecture
SOA
Слайд 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
Слайд 14Cервисный брокер (service broker)
Слайд 16«Microservices are small, autonomous
services that work together»
Sam Newman
Слайд 18Масштабируемость
команда разработки микросервиса может масштабировать свой компонент во время исполнения
независимо от других микросервисов
Слайд 19Устойчивость
Отельные пространства исполнения обеспечивают независимую от падений других компонентов системы
устойчивость
Слайд 20Гибкость
Поскольку микросервис - это всего лишь другой компонент где-то в
компьютерной сети, его можно разрабатывать с использованием наиболее подходящего для
реализуемой функциональности языка
Слайд 23Продуктивность
«Вы разработали, вам и поддерживать»
Слайд 24Микросервисное приложение выставляет наружу точно такие же интерфейсы, как и
монолит
Слайд 26С. Ньюмен «Создание микросервисов»
- Скрытие подробностей реализации
- Полная децентрализация
- Независимое
развёртывание
- Сначала потребитель
- Изолирование сбоев
Слайд 27Назначение: создать единое общее корпоративное приложение из нескольких специализированных приложений
Слайд 29Умные приемники и глупые каналы передачи данных
Приложения получают запросы, применяют
логику и отправляют ответ