Ежедневно, с 8:30 до 22:30
Предзаказ
1505

Concurrency в Go

Средняя оценка 5.0 из 5 на основании 1 голосов 5.0 (1)
1 0
0
3700 ₽
39000 ₽
-91%
Кэшбэк: 5% (185 ₽)
Курс будет выдан в течение 1-3 часов после оплаты.

Ты закроешь 95% вопросов по concurrency:

  • Получишь глубокие знания и изучишь «подкапотную» Concurrency в GO для работы в крупных проекта
  • Научишься писать параллельный код и разбираться в нем
  • Изучишь множество паттернов использования параллельного программирования
  • Попрактикуешься на реальных задачах, которые уже встречались или встретятся в рабочих проектах
  • Разработаешь свою In-memory key-value базу данных c WAL-ом, снэпшотами и асинхронной репликацией
  • Научишься решать задачи по Concurrency, которые встречаются на собеседованиях по Go
  • Разработаешь свою In-memory key-value базу данных с асинхронной репликацией, которая станет сильным портфолио при трудоустройстве, мощной практикой для реальных проектов и убедительным подтверждением навыков для повышения ответственности и уровня ЗП на работе
  • Ты получишь целый список учебников, статей, курсов и видео, которые позволят тебе изучать Concurrency после курса еще дальше и глубже

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

Урок 1. Pipeline процессора

  • Устройство процессора и шина
  • Кэши процессора, когерентность кэша (MESI), false sharing, store bufer, invalidation queue
  • Виртуальная память (MMU, TLB, swapping)
  • Алгоритмы планирования (FCFS, SJN, RR)
  • Процессы и потоки
  • Context switching
  • Hyper-threading
  • Сопрограммы

Результат:

  • понимаешь, как выполняется код в рамках архитектуры компьютера и операционной системы

Урок 2

  • Внутреннее устройство горутины
  • Внутреннее устройство планировщика Go
  • Work sharing и work stealing

Результат:

  • разбираешься во внутреннем устройстве горутин и планировщика GO, а также начинаешь понимать Concurrency модель в Go

Урок 3

  • Примитивы синхронизации (sync.WaitGroup, sync. Mutex, sync. Once)
  • Проблемы конкурентного программирования (deadlock, livelock, data race, starvation)
  • Внутреннее устройство mutex
  • Go race detector

Результат:

  • понимаешь, как синхронизировать конкурентный код при помощи примитивов синхронизации, а также знакомишься с основными проблемами конкурентного программирования

Урок 4

  • Примитивы синхронизации (sync.RWMutex, sync. Map, sync. Cond, sync. Pool, sync. atomic)
  • Реализация (spinlock, recursive mutex, timed mutex, rw mutex, once)
  • Cache contention

Результат:

  • знакомишься с дополнительными примитивами синхронизации и знаешь, как писать свои, в случае необходимости

Урок 5

  • Буферизованные и небуферизованные каналы
  • Однонаправленные каналы
  • Внутреннее устройство каналов
  • Share memory by communicating
  • Producer and consumer
  • Gracefull Shutdown

Результат:

  • разбираешься во внутреннем устройстве каналов и понимаешь, зачем они нужны в Go

Урок 6

  • Promise and Future
  • Fan-In and Fan-Out
  • Generator
  • Error group
  • Pipeline
  • Cancelation
  • Or channel
  • Bridge

Результат:

  • понимаешь, где и как использовать каналы в GO

Урок 7

  • Контексты (TODO, Background, WithCancel, WithCancelCause, WithDeadline, WithTimeout, WithValue)
  • Внутреннее устройство контекстов
  • Gracefull shutdown
  • Модели памяти (sequential, acquire/release, releaxed)
  • Memory reordering
  • Барьеры памяти

Результат:

  • знаешь контексты и понимаешь, как правильно их использовать в GO, а также дополнительно знакомишься с моделью памяти в Go

Урок 8

  • Шардированная map
  • Алгоритмы синхронизации (грубая, тонкая)
  • Lock-free структуры данных (stack, queue)
  • Линеаризуемость
  • ABA проблема

Результат:

  • знаешь нетривиальные алгоритмы синхронизации структур данных, а также понимаешь, как писать конкурентный код без блокировок

Урок 9

  • Реализация worker pool (fixed и dynamic)
  • Реализация cache synchronization
  • Реализация scheduler
  • Реализация batcher

Результат:

  • ты самостоятельно прорешал(-а) реальные задачи, с которыми сталкивались современные IT-компании, и полностью готов(-а) применять все знания на практике в настоящих проектах
  • ты готов(-а) к решению задач на собеседовании по GO
Характеристики
Наличие Предзаказ Тип Видео Размещение на сайте 30.11.2023 Артикул 1505

Об авторах

Фото: Владимир Балун
0.0
Владимир Балун
Основатель школы Balun.Courses, бывший тимлид в Яндексе и ведущий разработчик в Ozon. Курсы по Go, concurrency и подготовке к алгоритмическим собеседованиям.
Фото: Balun.Courses
0.0
Balun.Courses
Онлайн-школа Владимира Балуна для разработчиков junior+ и middle. Глубокий Go, System Design и алгоритмы — на задачах из высоконагруженных систем BigTech.

Отзывы и комментарии

Отзывов ещё нет, будьте первыми

Написать отзыв
Нажимая "Отправить" Вы соглашаетесь с правилами публикации и даёте согласие на обработку персональных данных. Администрация не несёт ответственности за содержание отзывов.

Похожие товары:

Постер товара: The Nature of Concurrency - Курс по многопоточному программированию
Скидка 89%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
The Nature of Concurrency - Курс по многопоточному программированию
Go (Golang)
Постер товара: Разработчик Golang
Скидка 91%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Разработчик Golang
Продвинутый Go и concurrency
Постер товара: Быстрая подготовка к собеседованию по Golang
Скидка 89%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Быстрая подготовка к собеседованию по Golang
Продвинутый Go и concurrency
Постер товара: Golang разработчик
Скидка 80%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Golang разработчик
Go (Golang)
Постер товара: Cовременная разработка на GO
Скидка 80%
Предзаказ
Средняя оценка 5.0 из 5 на основании 1 голосов
Cовременная разработка на GO
API и интеграции
Постер товара: Golang-разработчик (basic + advanced)
Скидка 90%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Golang-разработчик (basic + advanced)
Основы Go
Постер товара: Go для инженеров
Скидка 91%
Предзаказ
Средняя оценка 0.0 из 5 на основании 0 голосов
Go для инженеров
Go (Golang)
Постер товара: Глубокий Go — нюансы и тонкости языка за 2 месяца
Скидка 91%
Предзаказ
Средняя оценка 5.0 из 5 на основании 1 голосов
Глубокий Go — нюансы и тонкости языка за 2 месяца
Продвинутый Go и concurrency