Хранить изображение в базе данных или в системном файле?

Точный дубликат: Изображения пользователей: хранилище базы данных или файловой системы?
Точный дубликат: Сохранение изображений в базе данных: да или нет?
Точный дубликат: Должен ли я хранить мои изображения в базе данных или папках?
Точный дубликат: Будете ли вы хранить двоичные данные в базе данных или папках?
Точный дубликат: Сохранение изображений в виде файлов или или базы данных для веб-приложения?
Точный дубликат: Сохранение небольшого количества изображений: blob или fs?

Мне нужно сохранить изображение профиля пользователя (100px * 100px), что является лучшим способом его сохранить? базы данных или системного файла? который лучше, быстрее, безопаснее...?

Ответ 1

Всегда хранить изображения, музыкальные файлы и т.д. в системных файлах на диске, а затем сохранять URL-адрес: s им в базе данных. Это сделает его

1) быстрее

2) проще настроить параметры безопасности

3) лучше, чем я могу себе представить

Ответ 3

Я собираюсь предложить третий вариант, стороннее место участника, такое как Amazon S3 или Mosso Cloud Files. Оба предоставляют API-интерфейсы, которые вы можете использовать для загрузки файла, и оба предоставляют возможности CDN, чтобы файлы загружались быстрее, чем они удаляли ваши серверы или вытаскивали из вашей базы данных.

Это хороший вариант, потому что он лучший из обоих миров. Недостаток хранения изображений в базе данных заключается в том, что это дополнительный стресс для серверов приложений и баз данных (поиск файла и его вытягивание), а также увеличение размера вашей базы данных, что может означать, что раньше вам понадобилось больше оборудования.

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

Ответ 4

База данных

упрощает резервное копирование и восстановление и работает лучше, чем хранилище файловой системы для небольших изображений. Microsoft опубликовала исследовательский документ по этой теме: В BLOB или не в BLOB.