Pull to refresh

Comments 5

дата-центры с сотнями тысяч серверов

А пользователей сотни миллионов.

Один сервер обслуживает 1000 пользователей? :)
Ну такое.

Трафик растёт быстрее

Та какой там трафик.
При 140 символах то. :)

Всемирная сеть Twitter имеет прямые межсоединения с более чем 3000 уникальными сетями во многих дата-центрах по всему миру

Зачем? :)
Что такое прямое межсоединение?
Оптика с ДЦ Твиттера в другой ДЦ?

потому что нельзя полагаться на пользователей в вопросе выбора корректных DNS-серверов или на нашу способность точно определить, где в мире физически располагается DNS-сервер

Второе утверждение спорно.
С таким же успехом вы не определите и новым способом.
А первое утверждение тоже не совсем правильно.
Что значит «некорректный ДНС»?
Правильно было бы нельзя по расположению ДНС судить о расположении пользователя.
Возьмем тот же 8.8.8.8

Ежедневно публикуются сотни миллионов твитов. Они обрабатываются, хранятся, кэшируются, поставляются и анализируются.

Расскажите лучше, как реализуется выборка для ленты.
Разные пользователи могут быть подписаны на разные каналы.

и мы ставим цель обеспечить каждый отклик с задержкой в пределах 99,9% и 99,99%

Какой-то бред написан.
Может 99,9% и 99,99% запросов с нормальной задержкой? :)

Ну и раньше твиттер тупил у меня.
Расскажите лучше, как реализуется выборка для ленты.
Разные пользователи могут быть подписаны на разные каналы.


Не самое интересное, что можно спросить. На формирование лент пользователей уже очень много материала. Набросать свою систему подписок и лент — это максимум часа два.
Суть в том, что у каждого пользователя имеется своя собственная лента (множество идентификаторов записей); когда кто-то публикует запись, то его подписчикам в ленты «вставляется» идентификатор.
Судя по тому, что у Twitter частенько бывают задержки появления твитов в ленте, алгоритм у них примерно такой.
Ну вставился ИД куда-то.
Хоть это как-то сомнительно выглядит.
Как выбирать потом записи?
Как храняться элементы ленты?
На разных серверах?
То есть для формирования ленты нужно сходить на N серверов? :)
Если есть ID записи, в чём проблема его получить?
Вот пост про то, как делают быстрые ленты.
Та получить можно при любой архитектуре.
Интересно было, как это сделать грамотней. :)
Может какое-то геораспределение того, на что подписаны и т.д. и т.п.
Или у твиттера все по тупому сваливается в одну кучу? :)
Sign up to leave a comment.

Articles

Change theme settings