TGViewer
ИТ-архитектура ИТ-архитектура @itarchitecture · 558 subscribers
Post #186 295
Обзор архитектуры Twitter

#перевод_для_канала_itarchitecture

Да, Илон Маск недавно купил Твиттер, но что там под капотом?
Вот обзор архитектуры Twitter, обслуживающей более 230 миллионов пользователей.

Люди постоянно генерируют контент в Twitter. Ключевая задача Twitter в эффективном распространении данного контента. Как отправить его своим многочисленным подписчикам? Настоящий челендж - это преодоление ограничений работы в режиме реального времени. Цель - доставка потока сообщений до пользователя не более чем за 5 секунд.

Жизнь твита:

1. Твит поступает через Write API.
2. Write API направляет запрос в службу Fanout.
3. Служба Fanout выполняет много обработки и хранит твиты в кэше Redis.
4. Служба Timeline используется для поиска сервера Redis, на котором есть таймлайн пользователя (лента твитов в хронологии).
5. Пользователь извлекает свой таймлайн через службу Timeline.

Поиск и обнаружение

Ingester: аннотирует и токенизирует твиты, чтобы данные могли быть проиндексированы.
Earlybird: хранит поисковый индекс.
Blender: создает таймлайны поиска и обнаружения.

Отправка уведомлений

- HTTP push;
- push на мобильные устройства.
  • 👍 2
More from @itarchitecture
  1. Jul 17, 2026https://www.youtube.com/live/N_n3AQtrfEU?si=h3IaD4Avi-LFgGMi
  2. Apr 16, 2026Technology Radar за апрель 2026 Почитал свежий Technology Radar. Если коротко: мы входим в…
  3. Mar 5, 2026Dual Write Problem Dual Write Problem (проблема двойной записи) возникает, когда две или б…
  4. Feb 6, 2026День из жизни Solutions Architect #fun
  5. Jan 17, 2026Как внедряли DDD в Яндекс360 - Что такое DDD и зачем он нужен? - Какой книгой лучше всего…
  6. Jan 9, 2026🎬 Архитектура предпросмотра видео в Netflix Когда вы наводите курсор на таймлайн Netflix,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →