System design - проектируем web crawler
Распределенные системы и system design
0:00 / 0:00
System design - проектируем web crawler
1 894 просмотра · 6 месяцев назад
Распределенные системы и system design
4,03 тыс. подписчиков
1 894 просмотра · 6 месяцев назад
Проектирую web crawler, обходящий 50 млрд веб-страниц за неделю. С масштабируемостью и отказоустойчивостью.
Канал в телеграме: https://t.me/distributed_system_design
1-1 консультация / мок-собеседование: ser.sysd.channel@gmail.com
По другим вопросам: ser.sysd.channel@gmail.com
Комментарии-правки:
15:54 primary key не (domain, url, state), а (domain, state, url)
16:07 allowedRPS в табличке не int, а float - некоторые сайты разрешают запросы раз в несколько секунд
Тайм-коды:
00:00 Функциональные требования
01:10 Нефункциональные требования
07:04 Схема системы
08:03 Шаги (флоу)
11:34 Эффективный планировщик (scheduling). Проблемы, из-за которых Kafka и обычный брокер сообщений (очередь) не подойдет.
13:17 Kafka vs Amazon SQS
14:19 Схема с планировщиком (scheduler-ом) доменов
18:30 Планировщик: код для получения доменов через Redis
20:31 Планировщик: главный вывод
23:03 Общая схема ✅
24:40 Дедубликация по содержимому страниц
25:14 Масштабируемость и отказоустойчивость
27:40 Выбор баз данных
Канал в телеграмме (есть чат): https://t.me/distributed_system_design