TGViewer
Системный Аналитик Системный Аналитик @sys_sa · 19.1K subscribers
Post #500 18.4K
✍️ Распределенные системы: архитектурные паттерны и стили

В распределённой системем различные компоненты работают вместе, при этом физически разнесены

Характеристики

💙нет центрального управляющего узла
💙узлы взаимодействуют через сеть
💙параллельное выполнение задач на разных узлах
💙отказоустойчивость: работа при отказах отдельных узлов
💙масштабирование: доабвление узлов для увеличения мощности
💙автоматическое перераспределение ресурсов в зависимости от нагрузки
💙адаптация к разным архитектурам / технологиям

Виды

⚪️Вычислительные: распределённые ресурсы для вычислительных задач (пример: кластеры для обработки больших данных)
⚪️Хранилища данных: распределяют данные между несколькими узлами (Cassandra, Яндекс.Cloud)
⚪️Файловые системы: доступ к файлам через распределённую сеть (Virtuozzo Storage, HDFS)
⚪️БД: на нескольких узлах для согласованности и доступности данных (Tarantool, CockroachDB)
⚪️Очереди сообщений (Kafka, RabbitMQ)
⚪️Системы управления (Kubernetes)


Примеры архитектурных стилей распределённых систем
Напомним, архитектурный стиль — общий принцип, а паттерн — конкретная реализация этого принципа

✨Клиент-сервер: центральный сервер обслуживает запросы клиентов
➡ Пример: веб-приложения, где браузер взаимодействует с веб-сервером

✨Микросервисы: система делится на независимые сервисы. Взаимодействуют через API и могут разрабатываться, развёртываться и масштабироваться независимо
➡ платформа для доставки еды, где микросервисы управляют заказами, платежами и клиентским профилем отдельно

✨Одноранговая (P2P): все узлы равноправны, каждый может быть как клиентом, так и сервером
➡ торрент-сети (файлы передаются без центрального сервера)

✨Многоуровневая: система разделена на слои (представление, логика, данные), каждый выполняет свою функцию
➡ веб-приложения с фронтендом, бекендом и БД на разных серверах

✨Событийно-ориентированная архитектура (EDA): система реагирует на события, что позволяет асинхронное взаимодействие
➡ онлайн-магазин: событие "новый заказ" отправляется в очередь. Службы (склад, оповещения) реагируют на события и выполняют действия (упаковка товара, отправка уведомлений)

✨Сервис-ориентированная архитектура (SOA): взаимодействие между различными сервисами, которые выполняют отдельные бизнес-функции
➡ корпоративные системы, где отдельные сервисы отвечают за учет, CRM, логистику и др.


Примеры архитектурных паттернов


🔹CQRS: разделение операций чтения и записи для повышения производительности и масштабируемости
💙 интернет-магази: обработка заказов и поиск товаров работают независимо

🔹Service Mesh: управление сетевыми взаимодействиями микросервисов для маршрутизации, мониторинга и безопасности
💙 Istio, Linkerd: управление трафиком между микросервисами

🔹Сага: уразделяет транзакции на последовательность шагов, каждый включает компенсационные действия в случае сбоя
💙 бронирование путешествия: бронь билетов, отеля и аренды автомобиля. Тут каждый шаг может быть отменён

🔹Двухфазная фиксация (2PC): протокол для атомарности транзакций. Состоит из двух фаз — подготовка и фиксация, что гарантирует согласованность данных.
💙 банковская система: перевод средств между счетами требует согласования изменений в нескольких БД


Недостатки распределенных систем

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


Связь с CAP-теоремой

CAP-теорема относится только к распределённым системам.
Утверждает, что система может одновременно гарантировать только две из трёх характеристик:
💙консистентность
💙доступность
💙устойчивость к разделению


📎 Материалы
1. Лекция 1: Введение в распределенные системы
2. Централизованные vs децентрализованные vs распределенные системы
3. Основы Распределенных Систем
4. Консистентность и ACID-гарантии в распределенных системах хранения данных
5. Топ-5 архитектурных паттернов для распределённых систем

🧑‍🎓 Больше полезного в базе знаний по системному анализу

#архитектура
  • ❤ 39
  • 👍 17
  • 🔥 6
  • ⚡ 2
More from @sys_sa
  1. Sep 26, 2026Как облегчить работу ИТ-аналитика уже сейчас — без долгосрочных перестроек процессов? Обсу…
  2. Sep 24, 2026️️️️️️️️📚Курс: «Системный аналитик. Экспертный уровень». За 146 часов обучения получите а…
  3. Aug 28, 2026❓ ICAM (Incident Cause Analysis Method) ICAM (Incident Cause Analysis Method) — метод разб…
  4. Aug 19, 2026🖥 NewSQL NewSQL — класс реляционных СУБД, который совмещает привычный SQL и строгие ACID…
  5. Jul 14, 2026🔼 Server Driven UI (SDUI) Server Driven UI (SDUI) — архитектурный подход, при котором сер…
  6. Jul 7, 2026📊 Сравнение Баз данных и Хранилищ данных ▫️База данных – оперативное хранилище, где содер…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →