0Корзина Закладки 0

Укажите в поиске ключевое слово / автора / название курса

Balun.Courses / Владимир Балун - System Design. Тариф Стандарт (2023)

Balun.Courses / Владимир Балун - System Design. Тариф Стандарт (2023)

Артикул: 2755 В наличии

Автор курса: Владимир Балун

Категория: Программирование / Владимир Балун

Дата выхода: 2023

Продажник от автора: Перейти на продажник

Цена у блогера: 32900 ₽ цена автора

Вид доступа: Облако Mail


300 RUB
О материале

Описание

Знакомая ситуация?

  • На собеседованиях middle+ просят пройти system design интервью, а я ничего не знаю
  • На работе приходится принимать участие в проектировании сложной системы, а у меня нет знаний в этой области, ничем не могу помочь
  • Есть база по system design, но западают сложные темы и детали. Не могу правильно спроектировать большую систему / не понимаю, правильно делаю или нет
  • Не понимаю, как работают большие сложные сервисы по типу «Телеграм», «Яндекс.Такси», «Ozon»
  • Не понимаю, как работают транзакции, репликация, шардирование, консенсус в сети
  • Не могу проявить себя на работе, когда обсуждают большие системы. Нет знаний в этой области

На этом курсе 95% вопросов по system design вопросов по system design ты закроешь На этом курс:

  • Подготовишься к трудоустройству в топовую IT-компанию на позицию middle+ – поймешь, из чего состоит system design интервью и научишься проходить его на реальной практике
  • Узнаешь, как проектируются большие отказоустойчивые высоконагруженные системы
  • Познакомишься с огромным количеством паттернов и приемов проектирования
  • Узнаешь, как работают репликация, шардирование, транзакции и многое другое
  • Научишься устанавливать требования к системе, считать нагрузку, проектировать API, базу данных и всю систему в целом
  • Повысишь уровень ЗП и свою ценность в компании, как специалиста

Программа:

Урок 1. Основные Термины и компоненты


  • Файл-сервер / клиент-сервер / P2P
  • Надежность / масштабируемость / производительность / безопасность систем
  • Масштабирование (вертикальное / горизонтальное)
  • Монолитные и микросервисные приложения
  • Stateless и statefull сервисы
  • Latency и Throughput
  • SLA / SLO / SLI
  • Data / compute intensive приложения
  • Балансировка нагрузки (клиентская), (DNS и geoDNS балансировка), (l4 / l7), (round robin / weighted round robin / least connections / least response time / least bandwidth / sticky sessions)
  • Проксирование (forward / reverse)
  • Кеширование (внутренее / внешнее), (lazy caching / write-through / read-through / write-around), (Алгоритм Белади, LRU, SLRU, MRU, LFU, LIFO, FIFO, 2Q, MQ)
  • API (SOAP, REST, gRPC, GraphQL), (under / over fetching)
  • Observability (мониторинг, логирование, трейсинг, непрерывное профилирование, анализ сбоев)

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

Бонус: вместе спроектируем API для одного из популярных приложений.

Урок 2. Хранение данных

  • OLAP / OLTP
  • Data retention
  • Поисковые движки
  • Реляционные / документоориентированные / key-value / графовые / временных рядов / колоночные / Blob storage базы данных
  • Persistent и in-memory базы данных
  • Embedded и single file базы данных
  • Индексы (BTree / Hash / Bitmap / Spatial / Inverted), (кластерные / некластерные), (покрывающие)
  • ACID и BASE
  • Транзакции (WAL), (MVCC, 2PL), (Deferrable)
  • Constraints (NOT NULL, UNIQUE, FOREIGN KEY, CHECK, DEFAULT)
  • Хранимые процедуры, триггеры и materialized view
  • Изоляции транзакций (READ_UNCOMMITTED, READ_COMMITTED, REPEATABLE_READ, SERIALIZABLE)
  • Брокеры сообщений (Kafka, RabitMQ)
  • CDN

Результат: понимаешь, как и где хранить данные — разберешь различные базы данных, их устройство, и поймешь, когда и какую из них следует выбирать на практике.

Бонус: на уроке вместе спроектируем базу данных одного из популярных приложений

Урок 3. Распределенное хранение данных

  • Бэкапы
  • CAP теорема
  • Strong / Eventual Consistency
  • Репликация (синхронная / асинхронная / полу-синхронная), (с одним ведущим узлом / с несколькими ведущими узлами / без ведущих узлов), (statement based / row based / mixed), (логическая / физическая), (pull / push), (failover), (hot standby)
  • Replication lag (чтение собственных записей / монотонное чтение / согласованное префиксное чтение)
  • Фильтрация репликаций
  • Вертикальное и горизонтальное партиционирование
  • Шардирование (range based / key based / directory based), (client / proxy / coordinator routing)
  • Перебалансировка (virtual buckets)
  • Resharding (consistent / randezvous hashing)
  • Внутреннее устройство кластера Kafka
  • CDC (Debezium

Результат: понимаешь, как хранить данные распределенно на нескольких компьютерах, зачем это нужно и какие из-за этого могут возникнуть проблемы.

Бонус: на уроке вместе выберем стратегии репликации и шардирования базы данных одного из популярных приложений.

Урок 4. Паттерны и приемы проектирования

  • CQRS
  • Pub / sub
  • Low-latency и High-troughput приложения
  • Realtime и пакетная обработка запросов
  • Map Reduce
  • Service discovery
  • Push и pull модель
  • Толстый клиент
  • Тегирование и версионирование кэша
  • Трехзвенная архитектура
  • Отложенное выполнение задач
  • Polling / long polling / streaming
  • Retries (идемпотентность / backoff)
  • Circuit breaker
  • Gracefull degradation (fallback)
  • Rolling, Blue/Green и Canary релизы
  • Cобытийно-ориентированная архитектура (Event Notification / State Transfer / Event Collaboration)
  • Консенсус (распределенная блокировка / выбор лидера / распределенные транзакции)

Результат: знаешь различные паттерны и приемы проектирования, которые используются практически в любом дизайне системы.

Бонус: вместе найдем применимость этим паттернам и приемам проектирования в настоящих системах, а также спроектируем рекомендательную систему и система автодополнения слов.

Урок 5. Дизайн популярных систем

  • Дизайн Telegram
  • Дизайн ленты друзей ВКонтакте
  • Дизайн Яндекс Go

Результат: применяешь все знания с уроков на практике, умеешь строить большие высоконагруженные системы, понимаешь, как спроектированы популярные сервисы, которыми ты пользуешься каждый день.

Урок 6. Дизайн популярных систем#2

  • Дизайн LeetCode
  • Дизайн Booking.com
  • Дизайн Google Drive

Результат: применяешь все знания с уроков на практике, умеешь строить большие высоконагруженные системы, понимаешь, как спроектированы популярные сервисы, которыми ты пользуешься каждый день.


Информация о курсе

Вы находитесь на странице товара «Balun.Courses / Владимир Балун - System Design. Тариф Стандарт (2023)», это обучающий материал 2023 года, который можно приобрести в магазине MANY-COURSES.NET.

Данный курс расположен на платформе «Облако Mail». Вы можете перейти на оригинальный продажник, чтобы ознакомиться с предложением автора.

Если бы вы покупали курс у самого автора, его стоимость составляла бы 32900 рублей. В нашем магазине этот материал доступен со скидкой за 300 рублей. Курс входит в рубрику «Программирование / Владимир Балун». Другие материалы автора «Владимир Балун» можно найти через поиск по сайту.

Похожие курсы

Другие доступные материалы
Помощь перед покупкой

Вопросы и ответы

Как получить курс?

Добавьте курс в корзину или нажмите «Купить», выберите удобный способ оплаты и завершите заказ. После подтверждения оплаты ссылки на материалы автоматически придут на указанную почту. Авторизованные пользователи также найдут купленные материалы в разделе «Мои покупки».

Подробная инструкция по покупке.

Почему такая цена?

Материалы приобретаются совместно, поэтому стоимость заметно ниже цены автора. Вы получаете запись курса и заявленные материалы для самостоятельного обучения; обратная связь автора обычно не входит, если отдельно не указано обратное.

Цена у автора для этого курса указана как 32900 ₽.

Нашли дешевле?

Пришлите нам ссылку на более дешёвое предложение — проверим его и постараемся сделать цену ниже. Написать нам о цене.

Где будет доступ к курсу?

Для этого товара указан вид доступа: Облако Mail. После оплаты вы получите нужную ссылку или приглашение.

Можно ли скачать материалы?

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

Есть ли гарантия получения?

После подтверждения оплаты выдача происходит автоматически. Если возникнет вопрос с оплатой или доступом, напишите нам в Telegram, через чат на сайте или на admin@many-courses.net. До покупки по запросу можем показать дополнительные скриншоты или фрагмент содержимого.