2010-05-26 3 views
3

Есть ли у кого-нибудь информация об архитектуре твиттера?Как создать масштабируемую услугу Twitter?

Несколько конкретных вопросов я особенно интересно:

  • Я знаю, что они используют очереди сообщений. Но для чего именно они используют очереди?

  • Они «дублируют» твиты? Если да, то как? Например, скажем, у пользователя есть 10 000 последователей, и он делает твит «привет мир». Твиттер хранит «мир привет» только один раз, и каждый из этих 10 000 последователей должен будет прочитать этот твит из той же таблицы базы данных, или у каждого последующего есть свои данные «твиты, которые я следую», а «привет мир» дублируется 10 000 раз, раз для каждого последователя?

  • В чем-то связано с вышеизложенным: как они обманывают свои данные, отправителем чириканья, чириканцем, твитом ID, твитом datetime или чем-то еще?

  • Знаете ли вы, какие технологии они используют? Я читал о MySQL, RoR, Starling, Scala, memcached. Но это было давно, и информация была не очень подробной. Любая обновленная информация или более подробная информация?

+2

http://www.infoq.com/news/2009/06/Twitter-Architecture – JoseK

ответ

4

Вы можете проверить код в identi.ca, который является сервисом, похожим на Twitter, на основе инструментов с открытым исходным кодом и открытых стандартов. Надеюсь это поможет.

1

Не уверен, что это поможет. В Twitter есть много кода, который используется в службе на странице Twitter Open Source, что может дать вам намек или два на то, что делается.

Кроме того, Twitter имеет Engineering Blog, где у них есть сообщения о технологиях, используемых в Twitter

Смежные вопросы