Основні системи програмної архітектури

Концепції DevOps

Cem Sakarya

DevOps Risk Advisor

Програмна архітектура

 

Програмна архітектура — це базові структури програмної системи та дисципліна їхнього проєктування. Кожна структура містить програмні елементи, зв'язки між ними та властивості як елементів, так і зв'язків.

Архітектурне креслення

1 https://en.wikipedia.org/wiki/Software_architecture
Концепції DevOps

Application Programming Interfaces (APIs)

 

Інтерфейси прикладного програмування

  • Дані проходять через API
  • Вони критичні для ПЗ та архітектури
Концепції DevOps

Різні архітектурні системи

На що зважати

  • Тип ПЗ
  • У машині чи в браузері
  • Складність ПЗ
  • Прості частини ПЗ можна розглядати як один блок
  • Для складнішого ПЗ розділяйте на частини
Концепції DevOps

Microservices

Великий куб і група менших кубів, що символізують мікросервіси.

  • Найважливіша архітектура для складного ПЗ
  • Поширена в сучасних організаціях
  • Замість одного великого блока — багато малих незалежних
  • Менші блоки називають мікросервісами
  • Вони спілкуються між собою через API
Концепції DevOps

Клієнт взаємодіє з додатком, запитуючи доступні варіанти готелю й авто.

Концепції DevOps

  Додаток на телефоні клієнта звертається до бекенду по доступні варіанти бронювання.

Концепції DevOps

  Мікросервіс Hotels і мікросервіс Rental Cars повертають інформацію в додаток на телефоні клієнта.

Концепції DevOps

DevOps для архітектури мікросервісів

Мікросервіс Hotels оновлено з версії один до версії два, інші мікросервіси без змін.

Концепції DevOps

Переваги DevOps для мікросервісів

  • У великих організаціях ПЗ змінюють постійно
  • Змінюйте по одному за раз
  • Мікросервіси безпечніші й надійніші
  • Якщо один мікросервіс зіб'ється, решта працюватиме далі
Концепції DevOps

Давайте потренуємось!

Концепції DevOps

Preparing Video For Download...