Перейти к содержимому

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