Онлайн-курс «Архітектура високих навантажень» | robot_dreams
  • онлайн-курс
  • 17 занять
  • проєктування системи під 1 млн трафіку

АРХІТЕКТУРА ВИСОКИХ НАВАНТАЖЕНЬ

Досвід та інсайти від інженера з eBay, який понад 20 років розробляє програмне забезпечення

Олег Муравський

Principal Data Architect в eBay

ЦЕЙ КУРС ДЛЯ ВАС, ЯКЩО ВИ ХОЧЕТЕ:

проєктувати системи, які витримують пікові навантаження

впроваджувати кращі архітектурні рішення

розробляти системи, які здатні масштабуватися

обирати ефективні архітектурні рішення під завдання бізнесу

 

ПРО КУРС:

За 17 занять на курсі «Архітектура високих навантажень» ви:

  • опануєте сучасні практики з хайлоаду та системного дизайну, що застосовують у великих і середніх компаніях

  • вивчите термінологію архітектури застосунків

  • розберете переваги та недоліки технологій, моделі передачі, зберігання та структуризації даних

  • навчитеся працювати з розподіленими даними, пакетами й потоками, а також проєктувати відповідні рішення

  • створите власну систему, здатну витримати щоденний трафік в ≥ 1 млн користувачів та масштабуватися

до програми курсу входять

  • 01

    РОЗБІР АРХІТЕКТУР

    Дізнаєтесь, які технології лежать в основі масштабованих та відмовостійких систем. Навчитеся застосовувати й адаптувати сучасні highload-практики.

  • 02

    РОЗРОБКА ВЛАСНОЇ АРХІТЕКТУРИ

    Побудуєте архітектуру, яка здатна витримати великий трафік, зможете оптимізувати процеси на вашій поточній роботі й визначати вартість впровадження технічних рішень під завдання бізнесу.

  • 03

    ДИЗАЙН ДЛЯ BIG DATA

    Вивчатимете архітектуру високих навантажень на реальних кейсах. Ви навчитеся зберігати, обробляти й аналізувати Big Data, а також розподіляти навантаження на систему.

лектор

Олег Муравський

Principal Data Architect в eBay
20+ років досвіду розробки програмного забезпечення

  • співавтор двох стандартів RFC з RPKI

  • займався європейським реєстром IP-адрес, проєктами RIPEstat та RIPE Atlas

  • розробляв глобальну інфраструктуру відкритих ключів для безпечної маршрутизації

  • працював над сховищами даних для найбільших у світі вимірювань інтернету

Програма

  • 01 заняття
    27.05.2025 19:00

    Вступ до високопродуктивних систем

    • Зрозумієте, що таке високопродуктивні системи
    • Вивчите базові терміни, які застосовують в архітектурі систем
    • Дізнаєтесь, які завдання стоять перед архітектором високопродуктивних систем
    • Навчитеся збирати й документувати вимоги до програми/системи
  • 02 заняття
    30.05.2025 19:00

    Основи архітектурного дизайну

    • Розберете основні проблеми високонавантажених систем
    • Розглянете функціональні та нефункціональні вимоги до системи
    • Дізнаєтеся, з яких елементів складається система
    • Навчитеся виконувати базові розрахунки для оцінки потрібних ресурсів системи
    • Вивчите принципи масштабування та балансування навантаження
    • Створите базову архітектуру системи у Figma
  • 03 заняття
    03.06.2025 19:00

    Базові архітектури

    • Дізнаєтеся, чому архітектуру вибудовують від вимог до системи
    • Зрозумієте, як масштабувати систему
    • Ознайомитеся з основними архітектурами
  • 04 заняття
    06.06.2025 19:00

    Моделі доступу до даних

    • Дізнаєтеся, які відмінності існують між різними моделями доступу до даних
    • Зрозумієте переваги та недоліки того чи іншого підходу
    • Навчитесь обирати найкращий варіант з огляду на вимоги бізнесу
  • 05 заняття
    10.06.2025 19:00

    Формати зберігання та передачі даних

    • Зрозумієте відмінність між різними форматами зберігання та передачі даних
    • Розберете переваги та недоліки того чи іншого підходу
    • Навчитесь обирати найкращий варіант з огляду на вимоги бізнесу
  • 06 заняття
    13.06.2025 19:00

    Спеціалізовані структури даних

    • дізнаєтесь, як підвищити ефективність обробки даних за допомогою структур даних
    • зрозумієте, як побудовані сучасні системи доступу до даних
    • розглянете Cache, Bloom filter, Log, LSM-tree
  • 07 заняття
    17.06.2025 19:00

    Бази даних

    • зрозумієте відмінності між relational та document-based моделями зберігання даних
    • з’ясуєте, чим відрізняються declarative та imperative query languages
    • матимете уявлення про графові моделі даних
    • навчитесь обирати найкращий варіант зберігання даних з огляду на вимоги до системи
  • 08 заняття
    20.06.2025 19:00

    Distributed Data: транзакції

    • дізнаєтеся, що таке ACID
    • зрозумієте, чим відрізняються рівні ізоляції
    • навчитесь обирати рівень ізоляції з огляду на вимоги бізнесу
  • 09 заняття
    24.06.2025 19:00

    Аналітика та Big Data: зберігання даних

    • зрозумієте, в чому особливість зберігання даних для аналітики
    • з’ясуєте, навіщо потрібні column-oriented storages
    • навчитесь обирати відповідну модель зберігання даних з огляду на бізнес-вимоги
  • 10 заняття
    27.06.2025 19:00

    Пакетна обробка даних

    • дізнаєтеся, що таке batch-процесинг і в чому його особливості
    • розглянете такі інструменти, як-от MapReduce та Spark
  • 11 заняття
    01.07.2025 19:00

    Distributed Data: САР-теорема

    • дізнаєтеся, для чого доводиться розділяти дані та яким проблемам дає раду такий підхід
    • розберете CAP-теорему
  • 12 заняття
    04.07.2025 19:00

    Distributed Data: реплікація та секціювання

    • зрозумієте основи секціонування
    • опануєте різні стратегії ребалансування, вивчите їхні плюси та мінуси
    • дізнаєтеся, які готові рішення існують на ринку та використовують ту чи іншу стратегію
    • навчитесь обирати найкращий варіант з огляду на вимоги бізнесу
  • 13 заняття
    08.07.2025 19:00

    Distributed Data: цілісність і консенсус

    • зрозумієте, що таке цілісність даних у розподілених системах
    • ознайомитеся з типами цілісності даних, їхніми перевагами та недоліками
    • навчитесь обирати оптимальний варіант з огляду на вимоги бізнесу
    • з’ясуєте, що таке консенсус у розподілених системах
    • отримаєте уявлення про популярні алгоритми консенсусу, як-от Paxos та Raft
  • 14 заняття
    11.07.2025 19:00

    Потокова обробка даних

    • Дізнаєтеся, навіщо потрібна потокова обробка даних
    • Розберете поняття state, stream та immutability
    • Розглянете різні messaging systems, їхні переваги та недоліки
    • Навчитеся користуватися Apache Kafka
  • 15 заняття
    15.07.2025 19:00

    CQRS та Event Sourcing

    • Дізнаєтеся, що таке Event Stream / Event Sourcing
    • Розберете, в яких ситуаціях використовують Event Sourcing
  • 16 заняття
    18.07.2025 19:00

    Моніторинг, метрики та алертинг

    • Зрозумієте, в чому важливість моніторингу та грамотно налаштованих сповіщень
    • Дізнаєтеся різні види метрик і в чому відмінність метрик та логів
    • Розберетесь у системах моніторингу
  • 17 заняття
    01.08.2025 19:00

    Презентація курсового проєкту

    • Створите й захистите архітектуру обраного або свого проєкту

Реєстрація

Реєструйтеся на курс, щоб навчитися масштабувати архітектуру та зберігати стабільність системи навіть під час пікових навантажень.

 
 
 
Реєструючись, ви погоджуєтесь з умовами договору-оферти та політикою конфіденційності.