Для этого мы использовали CouchDB, сохраняя изображения как «вложение». Но через год файлы базы данных CouchDB размером в несколько десятков ГБ оказались головной болью. Например, репликация CouchDB по-прежнему имеет проблемы, если вы используете ее с документами очень больших размеров.
Итак, мы просто переписали наше программное обеспечение, чтобы использовать CouchDB для информации об изображениях и Amazon S3 для фактического хранения изображений. Код доступен на http://github.com/hudora/huImages
Возможно, вы захотите настроить сервис хранилища, совместимый с Amazon S3, для вашего проекта. Это обеспечивает гибкость и оставляет возможность выбора amazon без необходимости внешних служб. Walruss кажется самым популярным и масштабируемым клоном S3.
Я также призываю вас взглянуть на дизайн Livejournal с их превосходными предложениями Open 101 * * MogileFS и Perlbal . Эта комбинация является, пожалуй, самой известной настройкой обслуживания изображений.
Кроме того, Архитектура flickr может быть источником вдохновения, хотя они не предлагают программное обеспечение с открытым исходным кодом для широкой публики, как Livejournal.