План на курса

Въведение в Distributed Systems
  • Какво е разпределена система?
  • Често срещани проблеми: забавяне, съответствие, достъпност
  • Общ преглед на компонентите на системата и моделите за комуникация

Scalaностни принципи

  • Вертикално vs. хоризонтално масштабиране
  • Балансиране на натоварването и еластичност
  • Масштабиране на съхранението, изчисленията и I/O

Архитектурни шаблони

  • Клиент-сервер и многослойни архитектури
  • Ориентирани към услуги и микросервизни архитектури
  • Архитектура, ориентирана към събития, и очереди с съобщения

Теорема на CAP и модели за съответствие

  • Обяснение на теоремата за CAP
  • Силен vs. накрая консистентен
  • Избор между съответствие и достъпност

Стратегии за разпределяне и съхранение на данни

  • Разделяне и шардиране
  • Стратегии за репликация и четене/записване с кворум
  • Разпределени бази данни и ключ-стойност хранилища

Communication и координация в Distributed Systems

  • REST, gRPC, брокери на съобщения (например, Kafka, RabbitMQ)
  • Избор на лидер и разпределено консенсус
  • Използване на Zookeeper или etcd за координация

Отказоустойчивост и надеждност

  • Дизайн за отказ и благоприятно деградиране
  • Механизми за повтаряне, таймаути и прекъсвачи
  • Мониторинг, наблюдаемост и хаос инжиниринг

Съвременно облачно и практики за имплементация

  • Контейнери, оркестриране и Kubernetes
  • Безсостояние и неизменност
  • Наи-добрите практики за сигурността на разпределените системи

Резюме и следващи стъпки

Изисквания

  • Разбиране на основни концепции за мрежови връзки и дизайн на системи
  • Опит с общи практики в разработка на софтуер
  • Запознанство с облачното изчисление и дизайн на API е полезно

Целева аудитория

  • Архитекти на софтуер и технически ръководители
  • Инженери на задния край и DevOps професионалисти
  • Дизайнери на системи, изграждащи масштабируеми облачни приложения
 21 Часа

Брой участници


Цена за участник

Oтзиви от потребители (5)

Предстоящи Курсове

Свързани Kатегории