Re: [pgsql-ru-general] философия: хранение картинок

Поиск
Список
Период
Сортировка
От Warstone@list.ru
Тема Re: [pgsql-ru-general] философия: хранение картинок
Дата
Msg-id 1426236309.214219879@f167.i.mail.ru
обсуждение исходный текст
Список pgsql-ru-general
Вы на каком языке пишете? Просто, допустим, DBD::Pg Perl'овый умеет асинхронность для Пг. А еще есть модуль для nginx, который в базу ходить умеет и доставать оттуда данные.


Пятница, 13 марта 2015, 6:28 +03:00 от "Dmitry E. Oboukhov" <unera@debian.org>:
Раз уж тут пошло обсуждение "что правильно а что нет"

задам такой вопрос:

есть веб-проект, где пользователи загружают некоторые картинки себе в
профиль.
набор картинок условно говоря у всех пользователей одинаков.

нужно реализовать хранилище вида

- кладем картинку
- какой-то рабочий у хранилища создает для картинки preview, icon,
fulllsize изображения
- после этого процесс покладки картинки считаем завершенным

далее внешние запросы будут обращаться к картинкам строго по их ID.

какой дорогой пошли сперва:

Pg и три (или одна со столбиками) таблички icon, preview, full.

вебсервер который по ID делает запрос в одну из табличек за телом
картинки.

уперлись в то что вебсервер надо писать в асинхронном стиле (что не
проблема), причем ему нужна асинхронная работа с БД, что уже является
проблемой (асинхронность полностью не поддерживается драйверами и
Pg: то есть нельзя заслать множество запросов в Pg в асинхронном стиле
и ждать ответы на них, чтобы порядок был неважен итп)

а если сервер в синхронном стиле написан, то нагрузка его прибивает
очень здорово (повторюсь: выборка изображений строго по ID его
задача).

в итоге от Pg мы отказались, а стали хранить изображения в файликах на
диске.
Тут сильно страдает консистентность, но в угоду стоимости разработки
на это пошли.

вопрос: а как правильно организовать хранение картинок, чтобы

1. дешево разрабатывать и использовать
2. получить плюшки от индексов (например с помощью Pg можно отвечать
на вопросы "дай картинки похожие на эту")

--

. ''`. Dmitry E. Oboukhov
: :’ : email: unera@debian.org jabber://UNera@uvw.ru
`. `~’ GPGKey: 1024D / F8E26537 2006-11-21
  `- 1B23 D4F8 8EC0 D902 0555 E438 AB8C 00CF F8E2 6537

В списке pgsql-ru-general по дате отправления:

Предыдущее
От: Konstantin Gerasimenko
Дата:
Сообщение: Re:
Следующее
От: "Dmitry E. Oboukhov"
Дата:
Сообщение: Re: