Что под капотом у vk.com

Данный пост — небольшой отчет о процессе реверсивного проектирования и анализа работы самой популярной соц. сети в СНГ — vk.com. В основном анализ проводился со стороны безопасности (хотя сама соц. сеть весьма привлекательна как high-load проект, безусловно). Для себя вынес некоторые интересные решения и просто получил удовольствие. Пост получился, возможно, немного сумбурный, так углублялся просто в интересные мне моменты.

Содержание


Обзор

Архитектура


Security


Разное



Обзор


Прежде всего стоит прочесть парочку хоть и старых, но интересных статей:

После включения firebug'a и посмотрев сайт просто со стороны веб-разработчика, сразу становится видно, что внутри некоторый бардак (к нему мы еще вернемся в конце статьи), отсутствие диспатчеров (возможно, для снижения нагрузки), разбросанные стили и js файлы и многое другое. А в целом — незамысловатое веб-приложение, использующее в нагруженных местах nodejs, а для остального «стандартные» (я бы даже сказал «заезженные») технологии разработки (исключая их нераскрытую бд. Настройку балансировщиков так же откидываю).

Архитектура



Security

Прежде чем начать этот раздел я сделаю отсыл на пост Евгения Касперского, хотя некоторые моменты уже неактуальны — e-kaspersky.livejournal.com/70000.html


Разное


Мусор


И «по-мелочам». Базу начинают чистить. Например лимит сообщений с юзером в переписке большой, но уже подчищается. Различные другие наработки оставил мусором в блокноте.

Возможно, где-то я ошибся в представлении о работе ресурса и у вас есть более четкие представления о каких-то выше описанных моментах или что-то изучали сами — буду рад услышать и обсудить их в комментариях.
@BeLove
29.10.2012 15:54 UTC
Первоисточник