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

Дизайн системы новостной ленты Instagram | Архитектура лент Facebook, Instagram и LinkedIn

Arpit Vaish

0:00 / 0:00

Дизайн системы новостной ленты Instagram | Архитектура лент Facebook, Instagram и LinkedIn

920 просмотров · 3 мес. назад
Arpit Vaish
401 подписчик
920 просмотров · 3 мес. назад
Вы когда-нибудь задумывались, как Instagram, Facebook или LinkedIn определяют, какой пост отображается первым в вашей ленте? За каждой прокруткой скрывается одна из самых сложных распределенных систем, когда-либо созданных. В этом видео мы разработаем систему новостной ленты промышленного масштаба, способную обслуживать сотни миллионов пользователей, обеспечивая при этом низкую задержку, персонализированный рейтинг и обновления в реальном времени. Мы рассмотрим, как современные платформы социальных сетей используют Redis, Kafka, Cassandra, ранжирование машинного обучения, архитектуры Fan-out, шардированные счетчики, стратегии кэширования и распределенные системы для доставки персонализированных лент за миллисекунды. Независимо от того, к чему вы готовитесь: Собеседования по системному проектированию Собеседования на должность старшего инженера-программиста Собеседования на должность ведущего инженера Собеседования на должность главного инженера Разработка бэкенда Распределенные системы этот учебник охватывает архитектуру и компромиссы, используемые реальными социальными платформами. 📚 Что вы узнаете ✅ Функциональные и нефункциональные требования ✅ Оценка производительности ✅ Высокоуровневая архитектура ✅ Push vs Pull vs Hybrid Fan-out ✅ Конвейер генерации фидов ✅ Конвейер ранжирования машинного обучения ✅ Кэш фидов Redis ✅ Социальный граф Cassandra ✅ Потоковая передача событий Kafka ✅ Шардированные счетчики ✅ Обновления фидов в реальном времени (SSE vs WebSockets) ✅ Наблюдаемость и мониторинг ✅ Улучшения в производственной среде ✅ Вопросы от ведущего инженера 00:00 Введение 01:40 Функциональные требования 02:32 Нефункциональные требования 03:10 Оценка производительности 04:12 API и модель данных 05:36 Высокоуровневое проектирование 06:48 Push vs Pull vs Гибридное веерное распространение 09:40 Конвейер генерации ленты новостей 11:25 Рейтинг машинного обучения 13:22 Социальный граф и шардированные счетчики 15:06 Обновления ленты новостей в реальном времени 16:05 Наблюдаемость и мониторинг 17:02 Улучшения в производственной среде 17:55 Происхождение данных 18:26 Сравнение технологий 19:00 Вопросы от ведущего инженера 19:35 Итоговое резюме 👨‍💻 Рассмотренные технологии Системный дизайн Архитектура Instagram Архитектура Facebook Архитектура LinkedIn Дизайн новостной ленты Распределенные системы Микросервисы Redis Kafka Cassandra Рейтинг машинного обучения Рейтинг ленты новостей Веерное распространение Модель «push» Модель «pull» Гибридное веерное распространение События, отправляемые сервером (SSE) WebSockets Проектирование кэша Масштабируемость Бэкенд-разработка Если вы готовитесь Подпишитесь на YodhaMonk, чтобы получать обучающие материалы по проектированию систем для подготовки к собеседованиям на должности инженера-программиста, ведущего инженера, главного инженера или системного проектировщика. 👍 Лайк • 💬 Комментарий • 🔔 Подписаться #systemdesign #instagram #facebook #linkedin #newsfeed #distributedsystems #softwarearchitecture #backend #microservices #redis #kafka #cassandra #ml #ranking #scalability #engineering #staffengineer #principalengineer #softwareengineer #interviewpreparation #yodhamonk