Comments 11
Если уж и идти путем хранимых процедур, json/http гораздо проще сделать на plpython/plperl. Вы смотрели в их сторону?
0
Я не смог в посте найти ответа на главный вопрос — почему логика работы с изображениями находится в БД? У Вас вся бизнес логика в базе? Или Вы пишите некий фреймворк для каких-то целей?
В начале поста я увидел доводы только за внешний сервис работы с изображениями.
В начале поста я увидел доводы только за внешний сервис работы с изображениями.
+6
На счёт работы с изображениями спора нет, но на счёт бизнес-логики в БД хотел бы уточнить, что в этом плохого?
0
Ну, если логика специфичная (например, нам надо переворотить миллионы записей из разных таблиц — с точки зрения производительности), имеет смысл переваривать данные ближе к источнику и не выносить в какой-нибудь бекэнд.
А если в БД находится __вся__ логика, то весь проект сильнее рискует превратиться в набор лапши, чем написанная на какой-нибудь Джаве. Нет поддержки IDE в написании кода, мало библиотек (если они вообще есть).
Если короче — много рисков.
А если в БД находится __вся__ логика, то весь проект сильнее рискует превратиться в набор лапши, чем написанная на какой-нибудь Джаве. Нет поддержки IDE в написании кода, мало библиотек (если они вообще есть).
Если короче — много рисков.
0
Как показывает практика, поддерживать логику на уровне БД гораздо проще, нежели выносить это на клиентскую сторону. Не знаю, может мы о разных вещах говорим, просто я веду биллинг на PGSQL, с моей стороны это видится так.
0
Имхо, это зависит от логики, её объёма и в особенности от правильности рук того, кто пишет эту логику.
Если от Вашего проекта счастливы разработчики, клиенты, и бизнес получает кучу бабла, то Вы определённо на правильном пути. :)
Если от Вашего проекта счастливы разработчики, клиенты, и бизнес получает кучу бабла, то Вы определённо на правильном пути. :)
0
Вообще, это требуется для только для загрузки изображений в сервис, с учетом того, что имена файлов находятся уже в БД:
Возможно, проще это было сделать скриптом на PHP, так что понимайте это как еще один способ.
Можно сказать, что да.
UPDATE avatar SET image = bb_upload_file ( 'my.service.local', filename );
Возможно, проще это было сделать скриптом на PHP, так что понимайте это как еще один способ.
У Вас вся бизнес логика в базе?
Можно сказать, что да.
0
.
0
Вопрос «зачем» уже был задан, так что повторяться не буду.
Как ведет себя PostgreSQL при обработке таких запросов?
UPDATE должен же блокировать строку / таблицу при выполнении.
Получается, что если сервис картинок перегружен / лег отдохнуть, то запрос блокирует таблицу на достаточно длительный период?
Да и в обычном режиме, присутствует неопределенная задержка в скрипте, который блокирует таблицу…
P.S. после прочтение статьи теги доставляют отдельное удовольствие :)
Как ведет себя PostgreSQL при обработке таких запросов?
UPDATE должен же блокировать строку / таблицу при выполнении.
Получается, что если сервис картинок перегружен / лег отдохнуть, то запрос блокирует таблицу на достаточно длительный период?
Да и в обычном режиме, присутствует неопределенная задержка в скрипте, который блокирует таблицу…
P.S. после прочтение статьи теги доставляют отдельное удовольствие :)
+1
Sign up to leave a comment.
Взаимодействие PostgreSQL с внешним сервисом для хранения изображений