SlideShare a Scribd company logo
1 of 19
Download to read offline
Микросервисная архитектура
Барьеры микросервисной архитектуры
Максим Смирнов
http://mxsmirnov.com
mxsmirnov@gmail.com
Микросервисная архитектура
За границами нашего обсуждения
2Максим Смирнов март 2017
Микросервисная архитектура
Зачем говорить о барьерах?
3Максим Смирнов март 2017
Инноваторы
Энтузиасты
Прагматики
(ранее большинство)
Консерваторы
(позднее большинство)
Скептики
Микросервисная архитектура
Кто такой Максим Смирнов
4Максим Смирнов март 2017
2015-2016: Главный архитектор информационных
систем Центрального Банка Российской Федерации
(Банк России)
2005-2014: Руководитель
Департамента ИТ архитектуры ОАО “ВымпелКом”
(торговая марка “Билайн”)
2000-2005: Менеджер по развитию дополнительных
услуг связи: платежей, программы лояльности и др.
1995-2000: Эксперт по системам обмена
сообщениями, приложениям “Банк-Клиент” и
“Банк-Банк” ОАО АБ “Инкомбанк”
до 1995: разработчик криптографических приложений
(шифрование, цифровая подпись)
Микросервисная архитектура5Максим Смирнов март 2017
SOA – диагноз, а не лекарство
Микросервисная архитектура6Максим Смирнов март 2017
Пример: услуга “Продли скорость”
Абонент
Автоматизированная
система расчетов
Оператор связи Абонент
Баланс
Сеть 2G
звонок, СМС
S S
Микросервисная архитектура7Максим Смирнов март 2017
Пример: услуга “Продли скорость”
Абонент
Автоматизированная
система расчетов
Оператор связи Абонент
Интернет
Баланс Пакет услуг
Сети передачи
данных
Сеть 2G
звонок, СМС
данные
S S
R
Микросервисная архитектура8Максим Смирнов март 2017
Пример: услуга “Продли скорость”
Абонент
Автоматизированная
система расчетов
Оператор связи Абонент
Интернет
Сервисная
шина
Баланс Пакет услуг
Сети передачи
данных
Сеть 2G
звонок, СМС
данные
1 снизить
скорость
S S
R
Микросервисная архитектура9Максим Смирнов март 2017
Пример: услуга “Продли скорость”
Абонент
Автоматизированная
система расчетов
Оператор связи Абонент
Интернет
Сервисная
шина
Баланс Пакет услуг
Сети передачи
данных
Сеть 2G
звонок, СМС
данные
1
2
снизить
скорость
отправить
СМСS S
R
Микросервисная архитектура10Максим Смирнов март 2017
Архитектура интеграционных решений
Вызовы:
 Устаревание программных средств
 Масштабирование команды
 Непрерывная проверка гипотез
Возможности: использование
шаблона command-query
responsibility segregation(CQRS)
и event sourcing
Микросервисная архитектура11Максим Смирнов
Барьеры микросервисной архитектуры
март 2017
Барьер 1: непонимание
Микросервисная архитектура12Максим Смирнов март 2017
Барьер 1: непонимание
Characteristics of a Microservice Architecture:
1. Componentization via Services
2. Organized around Business Capabilities
3. Products not Projects
4. Smart endpoints and dumb pipes
5. Decentralized Governance
6. Decentralized Data Management
7. Infrastructure Automation
8. Design for failure
9. Evolutionary Design
Микросервисная архитектура13Максим Смирнов март 2017
The Twelve-Factor App http://12factor.net/
Codebase
Одна кодовая база, в системе
контроля версий – множество
развертываний
Dependencies
Явно объявляйте и
изолируйте зависимости
Config
Сохраняйте конфигурацию
в среде выполнения
Backing services
Считайте сторонние службы
подключаемыми ресурсами
Build, release, run
Разделяйте стадии сборки и
выполнения
Processes
Запускайте приложение как
процессs не сохраняющие
внутреннее состояние (stateless)
Port binding
Экспортируйте сервисы
через привязку портов
Concurrency
Масштабируйте приложение
с помощью процессов
Disposability
Максимизируйте надежность с
помощью быстрого запуска и
корректного завершения работы
Dev/prod parity
Держите окружения разработки,
и развёртывания максимально
похожими
Logs
Рассматривайте журнал как
поток событий
Admin processes
Выполняйте задачи
администрирования/управления
с помощью разовых процессов
Микросервисная архитектура14Максим Смирнов март 2017
Сервисы и микросервисы
Что такое microservices с точки зрения I&O:
1. Это процесс[ы], предоставляющий в сеть
программные интерфейсы (API)
2. Независимо развертываются и исполняются в
собственном программном контексте
3. Масштабируются посредством запуска
дополнительных экземпляров (stateless)
4. Реализуют отдельные операции для
информационных запросов и для команд (CQRS)
5. Предназначены для изоляции отказов и
автоматического восстановления
Микросервисная архитектура15Максим Смирнов март 2017
Сценарии развертывания микросервисов
Некоторые DevOps паттерны:
1. Human by Exception
2. Preapproved change
3. ChatOps
4. Canary rollouts
5. Failing forward
…
Балансировщик
нагрузки
Релиз 1
Blue environment Green environment
Балансировщик
нагрузки
Релиз 1 Релиз 2
Blue environment Green environment
Балансировщик
нагрузки
Релиз 1 Релиз 2
Blue environment Green environment
Балансировщик
нагрузки
Релиз 1
Blue environment Green environment
Балансировщик
нагрузки
Релиз 1 Релиз 3
Blue environment Green environment
Балансировщик
нагрузки
Релиз 1 Релиз 3
Blue environment Green environment
Микросервисная архитектура16Максим Смирнов март 2017
Барьер 2: Мало у кого случился DevOps
Барьеры микросервисной архитектуры
Микросервисная архитектура17Максим Смирнов март 2017
Жизненный цикл с точки зрения ИТ
Барьер 3: наличие потребности
Микросервисная архитектура18Максим Смирнов март 2017
Жизненный цикл с точки зрения NPD
Микросервисная архитектура
Барьеры микросервисной архитектуры
Максим Смирнов
http://mxsmirnov.com
mxsmirnov@gmail.com
Ваши вопросы и комментарии

More Related Content

What's hot

Практические шаги к цифровому предприятию
Практические шаги к цифровому предприятиюПрактические шаги к цифровому предприятию
Практические шаги к цифровому предприятиюМаксим Смирнов
 
Опыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банкеОпыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банкеCUSTIS
 
Три истории микросервисов
Три истории микросервисовТри истории микросервисов
Три истории микросервисовCUSTIS
 
Три истории микросервисов / Игорь Беспальчук (CUSTIS)
Три истории микросервисов / Игорь Беспальчук (CUSTIS)Три истории микросервисов / Игорь Беспальчук (CUSTIS)
Три истории микросервисов / Игорь Беспальчук (CUSTIS)Ontico
 
Три истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для EnterpriseТри истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для EnterpriseCUSTIS
 
варианты использования соа
варианты использования соаварианты использования соа
варианты использования соаМаксим Смирнов
 
Долгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейлеДолгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейлеCUSTIS
 
Снижение затрат при возведении зданий из металлоконструкций: переход от части...
Снижение затрат при возведении зданий из металлоконструкций: переход от части...Снижение затрат при возведении зданий из металлоконструкций: переход от части...
Снижение затрат при возведении зданий из металлоконструкций: переход от части...Ukrainian Steel Construction Center
 
Модель системы — архитектура для Agile-разработки
Модель системы — архитектура для Agile-разработкиМодель системы — архитектура для Agile-разработки
Модель системы — архитектура для Agile-разработкиCUSTIS
 
Готовим снасти, подбираем воблер
Готовим снасти, подбираем воблерГотовим снасти, подбираем воблер
Готовим снасти, подбираем воблерКРОК
 
Управление инженерной информацией
Управление инженерной информациейУправление инженерной информацией
Управление инженерной информациейNick Blanton
 

What's hot (13)

Практические шаги к цифровому предприятию
Практические шаги к цифровому предприятиюПрактические шаги к цифровому предприятию
Практические шаги к цифровому предприятию
 
Event-driven SOA
Event-driven SOAEvent-driven SOA
Event-driven SOA
 
Crossover for BPM
Crossover for BPMCrossover for BPM
Crossover for BPM
 
Опыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банкеОпыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банке
 
Три истории микросервисов
Три истории микросервисовТри истории микросервисов
Три истории микросервисов
 
Три истории микросервисов / Игорь Беспальчук (CUSTIS)
Три истории микросервисов / Игорь Беспальчук (CUSTIS)Три истории микросервисов / Игорь Беспальчук (CUSTIS)
Три истории микросервисов / Игорь Беспальчук (CUSTIS)
 
Три истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для EnterpriseТри истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для Enterprise
 
варианты использования соа
варианты использования соаварианты использования соа
варианты использования соа
 
Долгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейлеДолгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейле
 
Снижение затрат при возведении зданий из металлоконструкций: переход от части...
Снижение затрат при возведении зданий из металлоконструкций: переход от части...Снижение затрат при возведении зданий из металлоконструкций: переход от части...
Снижение затрат при возведении зданий из металлоконструкций: переход от части...
 
Модель системы — архитектура для Agile-разработки
Модель системы — архитектура для Agile-разработкиМодель системы — архитектура для Agile-разработки
Модель системы — архитектура для Agile-разработки
 
Готовим снасти, подбираем воблер
Готовим снасти, подбираем воблерГотовим снасти, подбираем воблер
Готовим снасти, подбираем воблер
 
Управление инженерной информацией
Управление инженерной информациейУправление инженерной информацией
Управление инженерной информацией
 

Similar to Барьеры микросервисной архитектуры

Барьеры микросервисной архитектуры
Барьеры микросервисной архитектурыБарьеры микросервисной архитектуры
Барьеры микросервисной архитектурыCUSTIS
 
Цифровая трансформация бизнеса
Цифровая трансформация бизнесаЦифровая трансформация бизнеса
Цифровая трансформация бизнесаМаксим Смирнов
 
Услуги КРОК по разработке ПО
Услуги КРОК по разработке ПОУслуги КРОК по разработке ПО
Услуги КРОК по разработке ПОКРОК
 
Обзор решений по управлению проектами (2009)
Обзор решений по управлению проектами (2009)Обзор решений по управлению проектами (2009)
Обзор решений по управлению проектами (2009)Vladimir Ivanov
 
Iri presentation (3)
Iri presentation (3)Iri presentation (3)
Iri presentation (3)Oleg Shalnev
 
(Russian) IT Architecture Practice for Telecom Operator
(Russian)  IT Architecture Practice for Telecom Operator(Russian)  IT Architecture Practice for Telecom Operator
(Russian) IT Architecture Practice for Telecom OperatorNikolay Marin
 
Cisco ScanSafe. Защита web-доступа как услуга “из облака”
Cisco ScanSafe. Защита web-доступа как услуга “из облака”Cisco ScanSafe. Защита web-доступа как услуга “из облака”
Cisco ScanSafe. Защита web-доступа как услуга “из облака”Cisco Russia
 
Решения КРОК по мониторингу бизнес операций
Решения КРОК по мониторингу бизнес операцийРешения КРОК по мониторингу бизнес операций
Решения КРОК по мониторингу бизнес операцийКРОК
 
Информационная безопасность
Информационная безопасностьИнформационная безопасность
Информационная безопасностьКРОК
 
Ара Исраелян "Как ускорить разработку приложений"
Ара Исраелян "Как ускорить разработку приложений"Ара Исраелян "Как ускорить разработку приложений"
Ара Исраелян "Как ускорить разработку приложений"IT Event
 
Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)
Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)
Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)Максим Смирнов
 
Функциональные карты вместо диаграммы вариантов использования
Функциональные карты вместо диаграммы вариантов использованияФункциональные карты вместо диаграммы вариантов использования
Функциональные карты вместо диаграммы вариантов использованияSQALab
 
Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)
Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)
Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)Максим Смирнов
 
УЦСБ, Мифтахов
УЦСБ, МифтаховУЦСБ, Мифтахов
УЦСБ, МифтаховExpolink
 
Опыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователей
Опыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователейОпыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователей
Опыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователейkvolkov
 
Мобильные решения КРОК
Мобильные решения КРОКМобильные решения КРОК
Мобильные решения КРОККРОК
 
Лекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных системЛекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных системВиталий Емельянов
 
Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...
Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...
Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...Dmytro Petrashchuk
 
Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...
Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...
Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...Expolink
 
Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...
Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...
Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...ebuc
 

Similar to Барьеры микросервисной архитектуры (20)

Барьеры микросервисной архитектуры
Барьеры микросервисной архитектурыБарьеры микросервисной архитектуры
Барьеры микросервисной архитектуры
 
Цифровая трансформация бизнеса
Цифровая трансформация бизнесаЦифровая трансформация бизнеса
Цифровая трансформация бизнеса
 
Услуги КРОК по разработке ПО
Услуги КРОК по разработке ПОУслуги КРОК по разработке ПО
Услуги КРОК по разработке ПО
 
Обзор решений по управлению проектами (2009)
Обзор решений по управлению проектами (2009)Обзор решений по управлению проектами (2009)
Обзор решений по управлению проектами (2009)
 
Iri presentation (3)
Iri presentation (3)Iri presentation (3)
Iri presentation (3)
 
(Russian) IT Architecture Practice for Telecom Operator
(Russian)  IT Architecture Practice for Telecom Operator(Russian)  IT Architecture Practice for Telecom Operator
(Russian) IT Architecture Practice for Telecom Operator
 
Cisco ScanSafe. Защита web-доступа как услуга “из облака”
Cisco ScanSafe. Защита web-доступа как услуга “из облака”Cisco ScanSafe. Защита web-доступа как услуга “из облака”
Cisco ScanSafe. Защита web-доступа как услуга “из облака”
 
Решения КРОК по мониторингу бизнес операций
Решения КРОК по мониторингу бизнес операцийРешения КРОК по мониторингу бизнес операций
Решения КРОК по мониторингу бизнес операций
 
Информационная безопасность
Информационная безопасностьИнформационная безопасность
Информационная безопасность
 
Ара Исраелян "Как ускорить разработку приложений"
Ара Исраелян "Как ускорить разработку приложений"Ара Исраелян "Как ускорить разработку приложений"
Ара Исраелян "Как ускорить разработку приложений"
 
Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)
Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)
Вебинар: Архитектура в ИТ-проектах (IT Expert 28 апреля 2016)
 
Функциональные карты вместо диаграммы вариантов использования
Функциональные карты вместо диаграммы вариантов использованияФункциональные карты вместо диаграммы вариантов использования
Функциональные карты вместо диаграммы вариантов использования
 
Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)
Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)
Зачем ИТ-архитектору Confluence (AUG Mowcow 26/02/2016)
 
УЦСБ, Мифтахов
УЦСБ, МифтаховУЦСБ, Мифтахов
УЦСБ, Мифтахов
 
Опыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователей
Опыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователейОпыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователей
Опыт ЛИНС-М обеспечения защищенного взаимодействия мобильных пользователей
 
Мобильные решения КРОК
Мобильные решения КРОКМобильные решения КРОК
Мобильные решения КРОК
 
Лекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных системЛекция 1. Архитектура информационных систем
Лекция 1. Архитектура информационных систем
 
Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...
Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...
Информационная безопасность банка 3.0: Повышение эффективности в условиях эко...
 
Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...
Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...
Фидан Мифтахов (УЦСБ) - Подход к созданию системы мобильного и удаленного дос...
 
Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...
Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...
Надёжная Kомпьютерная Инициатива - ответ сегодняшним рискам ИT безопасности 2...
 

More from Максим Смирнов

Laf 2018 Визуализация требований. Как рассказать историю одним слайдом
Laf 2018 Визуализация требований. Как рассказать историю одним слайдомLaf 2018 Визуализация требований. Как рассказать историю одним слайдом
Laf 2018 Визуализация требований. Как рассказать историю одним слайдомМаксим Смирнов
 
ITMF2017 – Архитектура Цифрового Предприятия
ITMF2017 – Архитектура Цифрового ПредприятияITMF2017 – Архитектура Цифрового Предприятия
ITMF2017 – Архитектура Цифрового ПредприятияМаксим Смирнов
 
Case management - недостающее звено BPM
Case management - недостающее звено BPMCase management - недостающее звено BPM
Case management - недостающее звено BPMМаксим Смирнов
 

More from Максим Смирнов (6)

Laf 2018 Визуализация требований. Как рассказать историю одним слайдом
Laf 2018 Визуализация требований. Как рассказать историю одним слайдомLaf 2018 Визуализация требований. Как рассказать историю одним слайдом
Laf 2018 Визуализация требований. Как рассказать историю одним слайдом
 
ITMF2017 – Архитектура Цифрового Предприятия
ITMF2017 – Архитектура Цифрового ПредприятияITMF2017 – Архитектура Цифрового Предприятия
ITMF2017 – Архитектура Цифрового Предприятия
 
Architecture + Agile
Architecture + AgileArchitecture + Agile
Architecture + Agile
 
Case management - недостающее звено BPM
Case management - недостающее звено BPMCase management - недостающее звено BPM
Case management - недостающее звено BPM
 
BPM ACM
BPM ACM BPM ACM
BPM ACM
 
Adaptive Case Management vs. BPM
Adaptive Case Management vs. BPMAdaptive Case Management vs. BPM
Adaptive Case Management vs. BPM
 

Барьеры микросервисной архитектуры

  • 1. Микросервисная архитектура Барьеры микросервисной архитектуры Максим Смирнов http://mxsmirnov.com mxsmirnov@gmail.com
  • 2. Микросервисная архитектура За границами нашего обсуждения 2Максим Смирнов март 2017
  • 3. Микросервисная архитектура Зачем говорить о барьерах? 3Максим Смирнов март 2017 Инноваторы Энтузиасты Прагматики (ранее большинство) Консерваторы (позднее большинство) Скептики
  • 4. Микросервисная архитектура Кто такой Максим Смирнов 4Максим Смирнов март 2017 2015-2016: Главный архитектор информационных систем Центрального Банка Российской Федерации (Банк России) 2005-2014: Руководитель Департамента ИТ архитектуры ОАО “ВымпелКом” (торговая марка “Билайн”) 2000-2005: Менеджер по развитию дополнительных услуг связи: платежей, программы лояльности и др. 1995-2000: Эксперт по системам обмена сообщениями, приложениям “Банк-Клиент” и “Банк-Банк” ОАО АБ “Инкомбанк” до 1995: разработчик криптографических приложений (шифрование, цифровая подпись)
  • 5. Микросервисная архитектура5Максим Смирнов март 2017 SOA – диагноз, а не лекарство
  • 6. Микросервисная архитектура6Максим Смирнов март 2017 Пример: услуга “Продли скорость” Абонент Автоматизированная система расчетов Оператор связи Абонент Баланс Сеть 2G звонок, СМС S S
  • 7. Микросервисная архитектура7Максим Смирнов март 2017 Пример: услуга “Продли скорость” Абонент Автоматизированная система расчетов Оператор связи Абонент Интернет Баланс Пакет услуг Сети передачи данных Сеть 2G звонок, СМС данные S S R
  • 8. Микросервисная архитектура8Максим Смирнов март 2017 Пример: услуга “Продли скорость” Абонент Автоматизированная система расчетов Оператор связи Абонент Интернет Сервисная шина Баланс Пакет услуг Сети передачи данных Сеть 2G звонок, СМС данные 1 снизить скорость S S R
  • 9. Микросервисная архитектура9Максим Смирнов март 2017 Пример: услуга “Продли скорость” Абонент Автоматизированная система расчетов Оператор связи Абонент Интернет Сервисная шина Баланс Пакет услуг Сети передачи данных Сеть 2G звонок, СМС данные 1 2 снизить скорость отправить СМСS S R
  • 10. Микросервисная архитектура10Максим Смирнов март 2017 Архитектура интеграционных решений Вызовы:  Устаревание программных средств  Масштабирование команды  Непрерывная проверка гипотез Возможности: использование шаблона command-query responsibility segregation(CQRS) и event sourcing
  • 11. Микросервисная архитектура11Максим Смирнов Барьеры микросервисной архитектуры март 2017 Барьер 1: непонимание
  • 12. Микросервисная архитектура12Максим Смирнов март 2017 Барьер 1: непонимание Characteristics of a Microservice Architecture: 1. Componentization via Services 2. Organized around Business Capabilities 3. Products not Projects 4. Smart endpoints and dumb pipes 5. Decentralized Governance 6. Decentralized Data Management 7. Infrastructure Automation 8. Design for failure 9. Evolutionary Design
  • 13. Микросервисная архитектура13Максим Смирнов март 2017 The Twelve-Factor App http://12factor.net/ Codebase Одна кодовая база, в системе контроля версий – множество развертываний Dependencies Явно объявляйте и изолируйте зависимости Config Сохраняйте конфигурацию в среде выполнения Backing services Считайте сторонние службы подключаемыми ресурсами Build, release, run Разделяйте стадии сборки и выполнения Processes Запускайте приложение как процессs не сохраняющие внутреннее состояние (stateless) Port binding Экспортируйте сервисы через привязку портов Concurrency Масштабируйте приложение с помощью процессов Disposability Максимизируйте надежность с помощью быстрого запуска и корректного завершения работы Dev/prod parity Держите окружения разработки, и развёртывания максимально похожими Logs Рассматривайте журнал как поток событий Admin processes Выполняйте задачи администрирования/управления с помощью разовых процессов
  • 14. Микросервисная архитектура14Максим Смирнов март 2017 Сервисы и микросервисы Что такое microservices с точки зрения I&O: 1. Это процесс[ы], предоставляющий в сеть программные интерфейсы (API) 2. Независимо развертываются и исполняются в собственном программном контексте 3. Масштабируются посредством запуска дополнительных экземпляров (stateless) 4. Реализуют отдельные операции для информационных запросов и для команд (CQRS) 5. Предназначены для изоляции отказов и автоматического восстановления
  • 15. Микросервисная архитектура15Максим Смирнов март 2017 Сценарии развертывания микросервисов Некоторые DevOps паттерны: 1. Human by Exception 2. Preapproved change 3. ChatOps 4. Canary rollouts 5. Failing forward … Балансировщик нагрузки Релиз 1 Blue environment Green environment Балансировщик нагрузки Релиз 1 Релиз 2 Blue environment Green environment Балансировщик нагрузки Релиз 1 Релиз 2 Blue environment Green environment Балансировщик нагрузки Релиз 1 Blue environment Green environment Балансировщик нагрузки Релиз 1 Релиз 3 Blue environment Green environment Балансировщик нагрузки Релиз 1 Релиз 3 Blue environment Green environment
  • 16. Микросервисная архитектура16Максим Смирнов март 2017 Барьер 2: Мало у кого случился DevOps Барьеры микросервисной архитектуры
  • 17. Микросервисная архитектура17Максим Смирнов март 2017 Жизненный цикл с точки зрения ИТ Барьер 3: наличие потребности
  • 18. Микросервисная архитектура18Максим Смирнов март 2017 Жизненный цикл с точки зрения NPD
  • 19. Микросервисная архитектура Барьеры микросервисной архитектуры Максим Смирнов http://mxsmirnov.com mxsmirnov@gmail.com Ваши вопросы и комментарии