DigitableCourses
База знаний

Тема: Конкурентность

11 материалов в этой теме.

Материалы

11 на странице
Статья

Транзакции, уровни изоляции, блокировки и аномалии

Что на самом деле обещает ACID, какие аномалии живут на каждом уровне изоляции, как устроены 2PL, MVCC и SSI — и почему в проде ломается не корректность, а очередь …

#базы данных#транзакции#изоляция
25 мин
Статья

Стеки, очереди и деки

Как дисциплина доступа LIFO/FIFO превращается в кольцевые буферы, монотонные стеки, work-stealing деки и продакшн-очереди с backpressure

#структуры данных#стек#очередь
22 мин
Статья

Системные вызовы и межпроцессное взаимодействие

Единственная дверь из процесса в ядро: ABI системного вызова, vDSO, EINTR и частичные записи, батчинг через io_uring — и весь спектр IPC от пайпов и SCM_RIGHTS до …

#операционные системы#системные вызовы#ipc
28 мин
Статья

Производительность конкурентного кода: контеншн, false sharing, закон Амдала

Почему добавление потоков перестаёт помогать и начинает вредить: закон Амдала как арифметика потолка, универсальный закон масштабируемости с разворотом кривой вниз, …

#производительность#конкурентность#многопоточность
25 мин
Статья

Персистентные и конкурентные структуры данных

Что происходит со структурами данных, когда время перестаёт быть линейным: персистентность и структурное разделение, path copying, персистентное дерево отрезков, …

#структуры данных#персистентность#конкурентность
23 мин
Статья

Паттерны конкурентности: пул, producer-consumer, future, pipeline

Как устроены пул воркеров, producer-consumer с обратным давлением, future/promise и pipeline — с формулами размера пула, рабочим кодом на Python и Go и разбором …

#паттерны проектирования#конкурентность#многопоточность
19 мин
Статья

Параллельные и распределённые алгоритмы, консенсус

Как считать сложность параллельных алгоритмов в модели работа/глубина, писать scan и параллельную сортировку, и почему в распределённой системе согласование упирается в …

#алгоритмы#параллельные вычисления#распределённые системы
17 мин
Статья

Неизменяемость: как работать с данными, ничего не меняя

Почему запрет на изменение данных убирает целый класс багов, как обновлять неизменяемые структуры без квадратичного копирования и сколько это реально стоит в проде.

#функциональное программирование#неизменяемость#структуры данных
17 мин
Статья

Многозадачность: процессы, потоки, параллелизм и почему это сложно

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

#computer science#конкурентность#параллелизм
14 мин
Статья

Конкурентные парадигмы: акторы, CSP, STM, разделяемая память

Четыре способа организовать одновременно работающий код — блокировки поверх общей памяти, CSP-каналы, акторы и программная транзакционная память: как каждый устроен …

#парадигмы#конкурентность#многопоточность
24 мин
Статья

Конкурентность в ФП: неизменяемость, STM, акторы

Почему разделяемое изменяемое состояние — источник почти всех багов конкурентности, и что предлагают взамен ФП-модели: STM, акторы, каналы, чистый параллелизм. С честной …

#функциональное программирование#конкурентность#многопоточность
22 мин