# ramzes (23.08.2016 / 15:31)Вот это правильное замечание
таблица позволила бы хранить файлы даже удаленно, не то что разбросать их по 100500 каталогам
# ramzes (23.08.2016 / 15:31)Вот это правильное замечание
таблица позволила бы хранить файлы даже удаленно, не то что разбросать их по 100500 каталогам
Совершенно другая проблема может возникнуть с галереями, где надо хранить кучу фоток (тоже ведь файлы), причем выводить их пачками на страницу и показывать для них превьюшки.
Вот с этими превьюшками то и вопрос: как их показывать?
Для картинки превьюшки нужна ссылка на реальный файл,
или если выдаем в формате data:image, тогда превьюшку можно генерить в момент выгрузки файла и хранить в бинарном виде в самой базе данных.
Однако, превьюшки уже выходят за рамки ответственности хранилища файлов.
Тут уже, если я пишу галерею, я сам должен хранить у себя, или же, для этого сделать отдельную базу (ибо будет большая) со своим классом-интерфейсом.
З.Ы.
Как вариант, превьюшки можно генерить на лету (напряг для сервера) и сбрасывать в кэш.
Но тут уже надо продумывать алгоритм выборки, а он может оказаться сложнее, чем просто хранить превьюху в базе.
# AlkatraZ (23.08.2016 / 15:45)Не надо срать в базу всякими файлами. Она не файловое хранилище.
Совершенно другая проблема может возникнуть с галереями, где надо хранить кучу фоток (тоже ведь файлы), причем выводить их пачками на страницу и показывать для них превьюшки.
Вот с этими превьюшкам
# Simba (23.08.2016 / 15:56)Логично.
Превьюхи генерятся и складываются в отдельную папку.
# AlkatraZ (23.08.2016 / 15:59)Обычно это делает какой нить дополнительный класс ресайзер.
Логично.
Но когда у тебя централизованное хранилище (если именно оно обсуждается), то надо решить, его ли заботы превьюхи, или же их должен генерить и хранить уже сам модуль?
# AlkatraZ (23.08.2016 / 15:36)по большей части это будет от 20 до 500 запросов
На кой оно тебе?
По большей части будет запрос на 1 файл.
Даже, если их хранится миллион, клиент загружает только один (надеюсь картинки для интерфейса там хранить не будем гг). В большинстве случае
# AlkatraZ (23.08.2016 / 15:59)нет. забота хранилища хранить и выдавать файлы, удалять-перемещать. и все.
Логично.
Но когда у тебя централизованное хранилище (если именно оно обсуждается), то надо решить, его ли заботы превьюхи, или же их должен генерить и хранить уже сам модуль?
если отдельно запрашивать из бд каждый файл
то вот такая штука на сотне онлайна нафиг уронит мускул сервер, а это вполне себе актуальный функционал сайта
# ramzes (23.08.2016 / 16:11)У юзера хранится ID файла в хранилище.
вопрос не в хранении, вопрос в получении пути к уже существующего файла. того же аватара.
и нет, мы не знаем ни каких ид файла, мы обращаемся к хранилищу как к фс, т.е. img/user/avatar/123.png наприм
вот про "определенных полей" как то не понял