Архитектура Twitter 2 года спустя

На сайте www.insight-it.ru появилась статья рассказывающая об изменениях в инфраструктуре такого высоконагруженного проекта как Twitter.

Небольшая статистика:

  • 752% рост аудитории за 2008 год
  • 1358% рост аудитории за 2009 год (без учета API, по данным comScore)
  • 175 миллионов зарегистрированных пользователей на сентябрь 2010 года
  • 9й сайт в мире по популярности (по данным Alexa, год назад был на 12 месте)
  • 95 миллионов твитов в день (1000 в секунду в среднем, пики до 2500)
  • Каждый твит читают в среднем 600 раз, то есть 1.2 миллионов показов твитов в секунду
  • 600 миллионов поисков в день
  • Лишь 25% трафика приходится на веб сайт, остальное идет через API
  • 6 миллиардов запросов к API в день, около 70 тысяч в секунду
Инфраструктуру проекта обслуживает более тысячи серверов. Базовые составляющие интерфейса Twitter написаны с использованием Ruby (используется REE) и Ruby on Rails, для реализации некоторых внутренних систем и обработчиков API используется язык Scala.

Для работы с БД задействованы MySQL, Apache Cassandra, FlockDB (распределенная БД, ориентированная на хранение графов) и Hadoop. В качестве http-сервера используется Apache (mod_proxy) и сервер приложений Unicorn, которые работают под прикрытием балансировщиков нагрузки и прокси (например, cachet). В проекте также используются: система кэширования memcached, система организации обработки слабо упорядоченных очередей сообщений Kestrel, высокомасштабируемый сервер для сбора и агрегации логов scribe.

Подробно тут.




Вас также может заинтересовать:

9 декабря 2010 года компьютерной мышке исполнилось 42 года
Twitter vs Instagram
twitter.com на русском языке
Google News и Twitter объеденяются
Google сделал новое предложение о покупке сервиса Twitter
Умелец создал систему кормления собаки через Twitter