Мозг и когнитивные функции

среда, 13 февраля 2008 г.

Сравнение архитектуры Flickr и myPicturetown

Недавно коллега дал ссылку на очень интересный пост.
Там достаточно подробно описывается архитектура Flickr сервиса. Кроме всего, сам блог Ивана Блинкова содержателен, рекомендую! Там же, кстати можно прочесть и про Google

Мне был интересен именно Flickr потому, что делаю систему фотохостинга. Задачи похожие. И... пришло разочарование. Не только ничего нового в этой сфере не придумано, но и "одинаковые вещи делаются одинаковым образом". Однако, в нашей системе есть некоторые отличия:


  • Система полностью на Java;

  • Обработка изображений - imagemagick, видео - ffmpeg;

  • PostgreSQL вместо MySQL;

  • Репликация рукописная;

  • Восстановление после сбоя - рукописное и поюзерное. Т.е. это когда данные целиком еще не синхронизированы между 2-мя нодами, а пользователи для которых эта процедура завершена переключаются из read-only режима в боевой и уже могут работать;

  • Обработка изображений, полученных от пользователей по электронной почте, происходит прямо на SMTP сервере (тоже Java).;

  • В среднем при загрузке одной страницы выполняется 5-7 SQL-запросов;

  • Миграция пользователей с хоста на хост осуществляется автоматически (!) по команде из web UI администратора;

  • По состоянию на дату поста добавляем поддержку SSO - один логин на все сервисы;



Ну и один из корневых компонент в подобных системах - это реестр пользователей. У Flickr это зовется центральной базой данных.
"... Центральная база данных включает в себя таблицу пользователей, состоящую из основных ключей пользователей (несколько уникальных идентификационных номеров) и указатель на сегмент, на котором может быть найдена остальная информация о конкретном пользователе."

У нас "CDC" - Central Dispatcher Cluster. Но суть не в том как этот компонент называют, а в его функциональности.

Делайте выводы, коллеги и не копируйте "вслепую" чужие схемы.