Архитектура Одноклассников

Сегодня представители Одноклассников расскали о накопленном за 5 лет опыте по поддержанию высоконагруженного проекта. Была опубликована довольно детальная информация о том, как устроена эта социальная сеть для аудитории «постарше». Далее можно прочитать мою версию материала, либо перейти на оригинал по сссылке

Архитектура Dropbox

DropboxЗалогом успеха Dropbox с технической точки зрения оказался Python. Как же Python оказался в сердце бизнес-модели Dropbox?

 

DropboxDropbox — самый простой способ синхронизации файлов между компьютерами и людьми.

 

Очень давно хотел написать пост про Dropbox, наверное с тех пор как начал пользоваться этим сервисом. Хоть они и у всех на слуху, но сами ведут себя довольно скрытно в плане публикации информации о себе. 

 

Архитектура Twitter. Два года спустя
В далеком 2008м я уже публиковал статью про архитектуру Twitter, но время летит стремительно и она уже абсолютно устарела. За это время аудитория Twitter росла просто фантастическими темпами и многое поменялось и с технической точки зрения. Интересно что новенького у одного из самых популярных социальных интернет-проектов?

DISQUS DISQUS — самая популярная система комментирования и одновременно самое большое в мире Django-приложение. Она установлена более чем на полумиллионе сайтов и блогов, в том числе и очень крупных, таких как Engadget, CNN, MTV, IGN. Основной особенностью в её реализации является тот факт, что DISQUS не является тем сайтом, который хотят увидеть пользователи, он лишь предоставляет механизмы комментирования, авторизации и интеграции с социальными сетями. Пики нагрузки возникают одновременно c появлением какой-то шумихи в Интернете, что достаточно непредсказуемо. Как же им удается справляться с этой ситуацией?

 

Гигантский шаг в сторону распределенного будущего был предпринят командой Google App Engine в момент их релиза системы хранения данных с повышенным уровнем репликации. Она направленна на критичные для бизнеса приложения, которые требуют расположения копий данных как минимум в трех датацентрах, полной семантики ACID для групп сущностей и ограниченных гарантий консистентности между группами сущностей.

Facebook поделились цифрами

 

Что обычно происходит за 20 минут на Facebook?

В большом бизнесе использование нескольких больших кластеров с финансовой точки зрения более эффективно, чем много маленьких. Чем больше машин в кластере, тем большими наборами данных он может оперировать, больше задач могут выполняться одновременно. Реализация MapReduce в Apache Hadoop столкнулась с потолком масштабируемости на уровне около 4000 машин в кластере. Разрабатывается следующее поколение Apaсhe Hadoop MapReduce,  в котором появится общий планировщик ресурсов и отдельный мастер для каждой отдельной задач, управляющий выполнением программного кода. Так как простой оборудования по техническим причинам обходится дорого на таком масштабе, высокий уровень доступности проектируется с самого начала, ровно как и безопасность и многозадачность, необходимые для поддержки одновременного использования большого кластера многими пользователями. Новая архитектура также будет более инновационной, гибкой и эффективной с точки зрения использования вычислительных ресурсов.

Архитектура Mollom

MollomMollom — это прибыльный SaaS сервис по фильтрации различных форм спама из контента, сгенерированного пользователями: комментариев, постов на форумах и блогах, опросов, контактных и регистрационных форм. Определение спама основано не только на контенте, но и репутации и прошлой активности разместившего его пользователя. Алгоритм машинного обучения Mollom выполняет роль цифрового модератора 24×7 для более 40 тысяч сайтов, в том числе и очень крупных компаний.

Архитектура Вконтакте

Логотип Вконтакте
Самая популярная социальная сеть в рунете пролила немного света на то, как же она работает. Представители проекта в лице Павла Дурова и Олега Илларионова на конференции HighLoad++ ответили на шквал вопросов по совершенно разным аспектам работы Вконтакте, в том числе и техническим. Спешу поделиться своим взглядом на архитектуру проекта по результатам данного выступления.

 

  Facebook LogoНа сегодняшний день Facebook является пожалуй самым обсуждаемым интернет-проектом во всем мире. Не смотря на довольно низкий уровень проникновения Facebook в России, темпы захвата аудитории этим проектом мягко говоря поражают. Как же им удается управляться с таким огромным социальным графом и удовлетворять потребности в общении невероятно большого количества людей по всему миру?

 

Plenty of Fish представляет собой очень популярный сервис онлайн знакомств, насчитывающий более 45 миллионов посетителей в месяц и 30+ миллионов просмотров страниц в сутки (что составляет около 500-600 страниц в секунду). Но это не самая интересная часть истории… Все это управляется единственным человеком при использовании нескольких серверов, при этом он тратит на работу всего пару часов в день и зарабатывает 6 миллионов долларов на рекламе от Google. Завидуете? Я тоже :) Как же ему удалось соединить столько влюбленных пар, используя так мало ресурсов?

 Aladdin Logo

Наверняка все прекрасно знают о лидерах интернет-поиска в российской части интернета: про Google, Яндекс или Рамблер сказано уже не мало слов, все много раз о них читали, пользовались, обсуждали — ведь уже прошло больше 10 лет с момента создания каждой из этих поисковых систем и, как следствие, их конкуренции на просторах рунета. Намного меньше же внимания на российских информационных сайтах уделяется национальным проектам других стран, а ведь среди них тоже есть заслуживающие внимания экземпляры, об одном из них я бы и хотел сегодня поведать.

Stack Overflow

Stack Overflow является любимым многими программистами сайтом, где можно задать профессиональный вопрос и получить ответы от коллег. Этот проект был написан двумя никому не известными парнями, о которых никто никогда раньше не слышал. Хорошо, не совсем так. Stack Overflow был создан топовыми программистами и звездами блогосферы: Jeff Atwood и Joel Spolsky. В этом отношении Stack Overflow похож на ресторан, владельцами которого являются знаменитости. По оценкам Joel'а около 1/3 программистов всего мира использовали этот интернет-ресурс, так что должно быть он представляет собой что-то достаточно полезное и интересное.

 

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

 

 

MySpace.com является одним из наиболее быстро набирающих популярность сайтов в Интернете с 65 миллионами пользователей и 260000 регистрациями в день. Этот сайт часто подвергается критике из-за не достаточной производительности, хотя на самом деле MySpace удалось избежать ряда проблем с масштабируемостью, с которыми большинство других сайтов неизбежно сталкивались. Как же им это удалось?

Jinja2

Я уже много раз упоминал в комментариях и других постах, что когда мне приходится программировать, последние пару лет я чаще всего использую Python. При этом так забавно получилось, что в рубрике «Программирование» об этом языке практически ни слова, даже подрубрики не было. Сегодня я попробую потихоньку начать исправлять данную ситуацию, речь пойдет об одном из самых продвинутых шаблонизаторов под Python — Jinja2. Встречаем!

Хотя да, достаточно давно уже Google выпустили в свет платформу Google App Engine. Описание этого продукта меня заинтересовало еще до открытия публичного доступа к системе и я даже записался на полу-закрытое тестирование. Вскоре пришло подтверждение, что мол «мы рады сообщить, что Ваша учетная запись активирована и теперь у Вас есть возможность попробовать наш новый продукт, для этого нажмите ссылку такую-то». Но пришло оно как-то не очень удачно, когда ни лишнего свободного времени не было, да и идеи подходящей для создания чего-нибудь эдакого на новой платформе тоже на горизонте не наблюдалось. В общем зашел на их сайт, посмотрел админку, поставил демо-приложение, поигрался чуток и забросил. Но с тех пор руки так и не прекращали чесаться от желания попробовать GAE на каком-нибудь более приближенном к реальности приложении, что мне совсем недавно и довелось сделать. Спешу поделиться впечатлениями.

Архитектура Pinterest

Pinterest — по непонятным для меня причинам популярная в определенных кругах социальная сеть, построенная вокруг произвольных картинок чаще всего не собственного производства. Как и Instagram проект довольно молодой, с очень похожей историей и стеком технологий. Тем не менее, Pinterest определенно заслуживает внимания как один из самых быстрорастущих по посещаемости вебсайтов за всю историю.

Архитектура Instagram

Instagram — всего лишь iOS, а теперь и Android, приложение для обмена фотографиями с друзьями. Последнее время находится на слуху благодаря новости о покупке проекта Facebook'ом за кругленькую сумму. Недавно один из основателей проекта, Mike Krieger, выступил на конференции с докладом о техническом аспекте проекта, который я и хотел бы вкратце пересказать.

Вверх