Архитектура Digg.com

2 апреля 2008 года

Иван Блинков перевел статью с рассказом о принципах организации работы ресурса Digg.com, обслуживающего примерно 200 миллионов просмотров страниц в месяц. Некоторые факты:

  • Используется MySQL, Apache2, FastCGI и PHP. Для кэширования задействован Memcached, для оптимизации производительности скриптов - APC PHP Accelerator;
  • 100 серверов расположены в нескольких датацентрах, из них: 20 серверов баз данных; 30 веб-серверов; несколько поисковых серверов, использующих Lucene;остальные используются для обеспечения избыточности.
  • Манипуляции с СУБД максимально упрощены, все что можно вынесено на плечи PHP скриптов;
  • MySQL работает в режиме master-slave: в основном, там где нужны транзакции, используется InnoDB, на серверах выполняющих аналитическую обработку данных используется MyISAM;
  • Снижения производительности при переходе с MySQL 4.1 на версию 5 замечено не было;
  • Большинство посетителей просто просматривают главную страницу и уходят. Это приводит к тому, что 98% запросов к базе данных являются операциями чтения;
  • Основные проблемы с масштабируемостью и производительностью связаны с обработкой данных и в большинстве случаев они не зависят от используемого языка программирования.

Источники править

 
 
Creative Commons
Эта статья содержит материалы из статьи «Архитектура Digg.com», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.