Подписка на RSS

Метка «Twitter»

NoSQL решения имеют одну общую черту — они в основном спроектированы для горизонтальной масштабируемости. Поэтому неудивительно, что для многих приложений в мире Twitter выбирают хранилища, основанные на NoSQL для их уровня данных.
Развертывание на одном сервере может быть сделано одним скриптом, который выполняет множество ssh/scp команд. Если у вас несколько больше серверов, вы можете запустить его в цикле последовательно или запустить несколько процессов параллельно. Однако, в какой-то момент это станет неуправляемым, особенно если вам надо обновлять несколько датацентров одновременно. Так как же такие компании как Twitter выпускают свои релизы?
Если вы посмотрите на первые дни этого блога, когда веб-масштабируемость была еще в пьянящем расцвете юности, многие статьи имели дело с применением MySQL и Memcached. Увлекательные времена. Используйте шардинг MySQL, чтобы справляться с высокими нагрузками на запись; кэшируйте объекты в Memcached, чтобы справляться с высокими нагрузками на чтение; и напишите кучу склеивающего кода, чтобы заставить все это работать вместе. Это было последнее слово техники, так это тогда делалось. Архитектура многих основных сайтов все еще следует этому образцу сегодня, в значительной степени потому что при достаточно больших усилиях это работает.
Один из разработчиков Twitter Райан Кинг говорит о причинах, повлиявших на переход этого сервиса к использованию Cassandra. Райан отвечает на вопросы о критериях выбора БД, преимуществах NoSQL и рассказывает о процедуре динамического переноса данных.

Ссылка: Перевод от moradan blog.

Оригинал интервью.

Несколько недель назад, обдумывая какую систему регистрации/обнаружения сервисов использовать для платформы развертывания масштабируемых приложений, я осознал, что для организаций среднего размера со сложным набором сервисов единственный вариант — построение с нуля.

Я также обнаружил, что многие пользователи AWS/EC2 уже используют S3 и SimpleDB для публикации/обнаружения сервисов. Это исследование в конечном счете привело меня к рассмотрению Cassandra в качестве хранилища данных для реестра сервисов в корпоративной сети.

Сейчас очень популярны приложения, которые позволяют получать или делать обновления Twitter. Есть такие приложения и на App Engine. Twitter предоставляет исчерпывающий API, который дает доступ к большей части возможностей.
Иногда реально очень сложно выяснить, что вызывает проблемы на таком web-сайте как Twitter. Но мы постоянно изучаем новые методы, помогающие нам решать множество проблем, которые возникают в сложном web-сайте.

Несколько недель назад мы заметили нечто необычное: более 100 посетителей Twitter в секунду видели «падение кита». Обычно эти киты редки; 100 раз в секунду было достаточной причиной, чтобы забить тревогу. Хотя 100 в секунду – это очень маленькая часть от всего нашего трафика, это все равно значило, что много пользователей получили плохое впечатление от посещения нашего сайта. Поэтому мы организовали команду выяснить причину проблемы.