Size: a a a

2021 November 01

НЛ

Никита Ломейко... in CODE BLOG / C#
ну вот если какой то юзер там например зайдёт в эту папку и что то с ней сдлеает
источник

НЛ

Никита Ломейко... in CODE BLOG / C#
удалит, изменит и все дела
источник

GK

Gennady Kurbesov in CODE BLOG / C#
можно ещё id пользователя, если картинка закрепляется за пользователем или если это какая нибудь аватарка
источник

НЛ

Никита Ломейко... in CODE BLOG / C#
ну да это аватарки там буду хранить
источник

GK

Gennady Kurbesov in CODE BLOG / C#
Это исключительные ситуации, которые ты должен обрабатывать до того как отдаешь ответ пользователю. Нет такой папки/картинки - значит нужно удалить запись из базы, а потом отдать ответ
источник

EA

Egene Avdeev in CODE BLOG / C#
Картинки в бд это нормальный подход, их хоть можно нормально менеджить!
источник

GK

Gennady Kurbesov in CODE BLOG / C#
Да можно. Только те, кто так решает делать обычно делают плохо)
источник

GK

Gennady Kurbesov in CODE BLOG / C#
Можно сохранить как блоб. Но я не удивился бы если он додумался бы его ещё засунуть как колонку в таблице профиля пользователя. И прикинь как оно работать будет, когда у тебя там несколько байт данных о пользователе, а всё остальное данные об аватарках. Так а потом бы небось ещё бы и получал выборку пачкой. Вообщем это может на производительность повлиять при плохом подходе
источник

GK

Gennady Kurbesov in CODE BLOG / C#
В современном мире на каждую кнопку/картинку/действие свой микросервис делают 😂
источник

4

4g in CODE BLOG / C#
Опять же это работа с BLOBами.
потому что бд не была придумана хранить файлы, они изначально хранилище данных (как бы это противоречиво не звучало)
Есть такая штука ( у майков в их sql точно есть искаропки давно уже) файловая таблица, но фактически файлы все равно хранятся в папке заданной сервером, но возвращает он эти файлы если не ошибаюсь ввиде BLOB (ну или чего у них там, очень давно юзал этот механизм)

С одной стороны прикольно, с другой стороны - нахрена.
источник

GK

Gennady Kurbesov in CODE BLOG / C#
+
источник

4

4g in CODE BLOG / C#
в том числе там есть ограничение по длине данных
источник

GK

Gennady Kurbesov in CODE BLOG / C#
Ведь это в любом случае лишние траты I\O. Тебе приходит запрос от браузера, что бы получить картинку, ты делаешь запрос в бд, та делает запрос своим файлам на диске и ищет эти данные, отправляет тебе, они все зраняться целиком у тебя в тперативке, пока ты не обработаешь запрос и не отдашь картинку.
источник

GK

Gennady Kurbesov in CODE BLOG / C#
А так ты отдал ссылку на статический файл, браузер запросил картинку, и чтение картинки идет напряму и более оптимизировано
источник

4

4g in CODE BLOG / C#
там еще один момент, который я не уверен на 100%

BLOB хранится отдельно от самой строки данных (это вроде близко к правде)
а когда выполняется запрос сначала приходит строка, потом сам BLOB.
И тут как уже выше упомянули - это лишние i/o
чем больше данных за один раз, тем большие проблемы возникают
источник

НП

Никита Петроченко... in CODE BLOG / C#
Вопросов больше чем ответов, конечно, от твоего сообщения
источник

GK

Gennady Kurbesov in CODE BLOG / C#
ну так ты пришел, теперь ты можешь объяснить)
источник

НП

Никита Петроченко... in CODE BLOG / C#
А что думать то, аватарки не нужно хранить в стат.объекте потому что это не стат.объект
источник

Б[

Барсик [SpamBlock]... in CODE BLOG / C#
Переслано от Барсик [SpamBlock]...
а вот допустим, сейчас в контексте лабы, но интересен подход в целом

вот мне надо сделать вафлю с доступом к файлам, причем доступ к файлам должен реализовываться посредством ролей

где правильно хранить и сверять эту роль?4
источник

Б[

Барсик [SpamBlock]... in CODE BLOG / C#
Переслано от Барсик [SpamBlock]...
в куках -  вроде как ненадежно, прокидывать какой-то id и каждый раз сверять роль по базе - дорого
источник