Этот курс — практическое погружение в мир современных распределённых систем и системного дизайна, созданное для инженеров, которые хотят не просто пользоваться готовыми решениями, а понимать, как они устроены внутри.
Темы курса
1. Single Node Storage
2. Replication
- Storage, Index, Concurrency Control, Recovery
- Как устроен сторидж: страницы, блоки, файлы, буферы
- Индексы, MVCC, транзакции и блокировки
- Write-Ahead Logging и восстановление после сбоев
- Примеры: InnoDB, Postgres, RocksDB
3. Sharding / Partitioning
- Зачем нужна репликация и какие бывают типы (синхронная, асинхронная, leaderless)
- Репликационные логи и стратегии согласования
- Репликация в Postgres, MySQL, MongoDB
- Горизонтальное масштабирование и деление данных на шард/партиции
- Consistent hashing, range-based, directory-based подходы
- Балансировка нагрузки и миграции шардов
4. Consistency & Consensus
5. Networking
- Модели согласованности (strong, eventual, causal, etc.)
- Алгоритмы консенсуса: Raft, Paxos, Viewstamped Replication
- Как достигается fault tolerance в кластере
6. Observability & Discovery
- Как общаются узлы в распределённой системе
- RPC, gRPC, multiplexing, heartbeat
- Failures, timeouts, и как их правильно обрабатывать
7. Architecture Patterns
- Метрики, логирование, трассировка
- Health-checks, service discovery, конфигурационные сервисы
- Инструменты мониторинга и диагностики
8. System Design Hot Questions
- От классической монолитной СУБД к распределённым решениям
- Архитектуры NEON, TiDB, Yugabyte, CockroachDB
- Compute vs Storage separation, CQRS, Event sourcing
- Как ответить на вопросы вроде:
- “Как бы вы спроектировали Twitter?”
- “Как хранить миллионы событий в реальном времени?”
- “Как построить fault-tolerant key-value store?”
Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
Новые складчины | страница 6
Категории
Страница 6 из 34
