Главная Школы Robot Dreams Архітектура високих навантажень
Robot Dreams

Архітектура високих навантажень

16 занятий
Для опытных
Lead / Architect / CTO
Этот курс про проектирование систем, которые легко масштабируются. Вы научитесь выбирать архитектуру, форматы данных и инструменты под конкретные задачи. Разберете, как работают распределенные системы, мониторинг и обработка данных. В конце создадите собственный проект.

О курсе

Программа курса

Введение в высокопроизводительные системы и базовые архитектуры

На этом курсе начнут с основ. Сначала объяснят, что такое высокопроизводительные системы и какие задачи решает их архитектор. Студенты научатся собирать и документировать требования к системе. Далее разберут, почему архитектура строится именно от этих требований. Рассмотрят основные принципы масштабирования и познакомятся с фундаментальными архитектурными подходами.

Работа с данными: модели, форматы и базы данных

Здесь углубятся в то, как система взаимодействует с информацией. Разберут различные модели доступа к данным, их сильные и слабые стороны. Далее сравнят форматы хранения и передачи данных, чтобы понимать, какой выбор будет оптимальным для конкретных бизнес-потребностей. Отдельный блок посвящен базам данных - студенты научатся различать реляционные, документные и графовые модели, а также выбирать правильный инструмент для своих задач.

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

Этот модуль покажет, как повысить эффективность работы с данными с помощью специализированных структур. Студенты поймут принципы построения современных систем доступа. Затем перейдут к аналитике и Big Data, где узнают об особенностях хранения данных для аналитических целей, в частности о column-oriented хранилищах и критериях их выбора.

Распределенные данные: основы и управление

Модуль охватывает ключевые аспекты работы с распределенными данными. Сначала студенты узнают, зачем нужно разделять данные и какие проблемы это решает. Разберут CAP-теорему - фундаментальный принцип распределенных систем. Далее пойдет речь о репликации и секционировании, включая стратегии ребалансировки и готовые рыночные решения.

Транзакции, целостность и консенсус

Здесь рассмотрят, как обеспечить надежность в распределенных системах. Студенты изучат ACID свойства и уровни изоляции транзакций, научатся их выбирать. Затем перейдут к вопросам целостности данных и алгоритмов консенсуса, таких как Paxos и Raft, которые позволяют распределенным узлам договариваться о состоянии системы.

Обработка данных: Batch и Stream

Этот блок посвящен методам обработки больших объемов информации. Студенты поймут разницу между batch- и stream-процессингом. Узнают о модели MapReduce и системах обмена сообщениями. Затем углубятся в stream-обработку, разберут понятие состояния, потока данных и неизменяемости.

CQRS, Event Sourcing и мониторинг

На завершающих этапах рассмотрят сложные архитектурные паттерны. Студенты узнают, что такое CQRS и Event Sourcing, и в каких случаях их применяют. Последний модуль посвящен мониторингу, метрикам и алертингу - важным инструментам для поддержки живой системы. Здесь объяснят разницу между метриками и логами, а также разберут системы мониторинга.

Защита курсового проекта

Курс завершается практическим заданием. Каждый студент создаст собственную архитектуру для реального или учебного проекта и презентует ее, получив фидбек от преподавателя.

Особенности курса

Курс сосредоточен на технологиях Highload и включает значительную практическую составляющую. Студенты не только изучат теорию, но и разработают собственную архитектуру. Программа нацелена на карьерное рост, а каждый участник получает персональный фидбек от лектора и методиста на протяжении всего обучения.

Что включено

Вечерние занятия
Выдается диплом/сертификат
Реальный проект в портфолио
Сопровождение ментора