TGTGInsighttelegram intelligenceLIVE / telegram public index
← AI[ex]Time
AI[ex]Time avatar

TGINSIGHT POST

Post #47

@AIexTime

AI[ex]Time

Views2,310Post view count
PostedNov 2911/29/2023, 09:13 AM
Post content

Post content

Досмотрел курс по распределенным системам от Martin Kleppmann (автора того самого кабанчика, которого советуют для подготовки к собеседованиям). Однозначно рекомендую, если интересно лучше разобраться в области в целом. Курс довольно короткий (23 лекции по 10-30 минут), но очень емкий и на самом деле сложный, если все концепции пытаться глубоко осознать. Структура примерно такая: - Общий обзор распределенных систем и сложностей, которые появляются в этом сценарии: сообщение потеряется при доставке по сети, одна из машин перестанет отвечать или начнет посылать неверные сообщения и так далее. Все это на примерах по типу Two Generals Problem/Byzantine Fault. - Далее разбор фундаментальных концепций, поверх которых будут строиться дальнейшие алгоритмы: кворумы, консенсусы, броадкастинг, синхронизация времени на разных машинах, репликация. - Объяснение более абстрактных конструкций и конкретных алгоритмов на основе уже пройденных вещей. Как реализовать консенсус? Как реализовать транзакции в распределенных системах? Как сделать систему консистентной для чтения? - Систем дизайн некоторых распределенных систем: Google Spanner (Распределенная база данных), Google Docs, Calendar. Дизайн здесь не от начала до конца, а с точки зрения проблем, возникающих в распределенных системах, и их решений. Хороший старт, чтобы заложить понимание ключевых вещей и понять, хочется ли углубляться еще дальше. Ну и Martin Kleppmann прекрасно объясняет вещи и приводит крутые примеры.