Anton Sidorov homepage

Bookmark this to keep an eye on my project updates!

Follow me on GitHub

Стили архитектуры

Архитектурный стиль определяет семейство подобных систем с точки зрения структурной организации. В частности, стиль определяет набор компонентов и коннекторов, которые можно применять в реализациях этого стиля, а также ряд правил, согласно которым они могут сочетаться.

Виды архитектур

Виды архитектур Worksheet

  • Клиент-Сервер
  • Многослойная n-уровневый Layered
    • Горизонтальные уровни, разделенные подсетью
    • Традиционный домен для бизнеса. Частота обновления не высокая.
  • Модульный монолит
  • Сервис-ориентированная SOA
    • предполагает модульное приложение
    • состоящее из дискретных и слабосвязанных программных агентов, которые выполняют конкретные функции
  • Сервисная
    • является хорошей отправной точкой в ​​эволюционном переходе от монолитной архитектуры
    • затем возможно переход к микросервисам, если возникнет необходимость в новом уровне масштабируемости
    • подразумевает наличие ядра и множества сервисов с ним взаимодействующих
    • пример: все linux решения
  • Distributed System Распределенная архитектура
    • Микросервисы Микрослужбы MSA
      • Вертикально (функционально) разделенные службы, вызывающие друг друга через API-интерфейсы
      • Сложный домен. Частые обновления.
      • Высокораспределенная архитектура
    • Event Driven Управляемая событиями архитектура EDA
      • Производитель и потребитель
      • Независимое представление для каждой подсистемы
      • Интернет вещей и системы, работающие в режиме реального времени
    • Большие данные Big Data
      • Разделение большого набора данных на мелкие блоки
      • Параллельная обработка для локальных наборов данных
      • Пакетная обработка и анализ данных в режиме реального времени
      • Прогнозная аналитика с использованием машинного обучения
    • Большие вычисления Big Compute
      • Распределение данных в тысячах ядер
      • Домены с ресурсоемкими вычислениями, например моделированием
  • Микроядерная Microkernel
    • этот шаблон позволяет вам добавлять дополнительные функции приложения в виде плагинов к основному приложению
    • обеспечение расширяемости, а также разделения и изоляции функциональности
  • Vertical-slice
  • Pipeline
    • ZeroMQ
    • Интерфейс — очередь — рабочая роль
      • Интерфейсные и серверные задания, разделенные асинхронным обменом сообщениями
      • Относительно простой домен с ресурсоемкими задачами
  • Symmetrically distributed system architectures - peer-to-peer
    • пример Torrent
  • Hybrid system architectures
    • Cloud computing
    • edge-cloud computing
    • blockchain
  • Массово-параллельная архитектура (Massive Parallel Processing, MPP)

Стили-НФТ Марк Ричардс

Onion Луковая гексагональная архитектура

onion

  • состоит из концентрических слоёв
  • зависимости идут снаружи в центр
  • гексагональная архитектура, или «порты и адаптеры»
  • в основе Clean Architecture