From: | "Dmitry E(dot) Oboukhov" <unera(at)debian(dot)org> |
---|---|
To: | pgsql-ru-general(at)postgresql(dot)org |
Subject: | философия: хранение картинок |
Date: | 2015-03-13 03:28:33 |
Message-ID: | 20150313032833.GG11054@vdsl.uvw.ru |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-ru-general |
Раз уж тут пошло обсуждение "что правильно а что нет"
задам такой вопрос:
есть веб-проект, где пользователи загружают некоторые картинки себе в
профиль.
набор картинок условно говоря у всех пользователей одинаков.
нужно реализовать хранилище вида
- кладем картинку
- какой-то рабочий у хранилища создает для картинки preview, icon,
fulllsize изображения
- после этого процесс покладки картинки считаем завершенным
далее внешние запросы будут обращаться к картинкам строго по их ID.
какой дорогой пошли сперва:
Pg и три (или одна со столбиками) таблички icon, preview, full.
вебсервер который по ID делает запрос в одну из табличек за телом
картинки.
уперлись в то что вебсервер надо писать в асинхронном стиле (что не
проблема), причем ему нужна асинхронная работа с БД, что уже является
проблемой (асинхронность полностью не поддерживается драйверами и
Pg: то есть нельзя заслать множество запросов в Pg в асинхронном стиле
и ждать ответы на них, чтобы порядок был неважен итп)
а если сервер в синхронном стиле написан, то нагрузка его прибивает
очень здорово (повторюсь: выборка изображений строго по ID его
задача).
в итоге от Pg мы отказались, а стали хранить изображения в файликах на
диске.
Тут сильно страдает консистентность, но в угоду стоимости разработки
на это пошли.
вопрос: а как правильно организовать хранение картинок, чтобы
1. дешево разрабатывать и использовать
2. получить плюшки от индексов (например с помощью Pg можно отвечать
на вопросы "дай картинки похожие на эту")
--
. ''`. Dmitry E. Oboukhov
: :’ : email: unera(at)debian(dot)org jabber://UNera(at)uvw(dot)ru
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
`- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537
From | Date | Subject | |
---|---|---|---|
Next Message | Konstantin Gerasimenko | 2015-03-13 07:11:03 | Re: философия: хранение картинок |
Previous Message | Dmitry E. Oboukhov | 2015-03-13 02:43:03 | Re: |