Показать сообщение отдельно
  #27 (permalink)  
Старый 23.11.2010, 16:23
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от monolithed
Кстати есть еще один вариант:
1. нужно создать папку для хранения фотографий, к примеру TMP, в которой будут храниться временные фотографии.
2. когда пользователь купит фото, то ему нужно давать не прямую ссылку на нее из основного хранилища, а ссылку на копию. Т.е. после покупки находится фото с нужным именем, затем производится копирование во временную папку и уникальное переименование самой фото, после пользователь получает ссылку на скачивание, которая действует определенное время (можно крону ставить задачу на выполнение скрипта, который будет удалять файлы срок хранения который вы определите)
в чем отличие вашей идеи от моей?
кроме того, что копирование файла более длительная операция, чем создание ссылки. ну и место занимаемое временными фотографиями, конечно же.
Сообщение от monolithed
Можно одну общую папку создать для всех пользователей
отличное решение, для того чтобы "снизить нагрузку"
вы в курсе, что большое количество файлов в одной директории очень сильно замедляет работу с этой директорией?
Сообщение от mycoding
Придется наверное все в одной папке держать и названия у файлов будут вроде таких
по описанным причинам очень плохое решение
посмотрите на движок википедии(ну или саму википедию)
они хранят фотографии в подпапках на несколько под уровней

сейчас вроде бы первый уровень - 16 папок.
в каждой из них по 256 подпапок.
в оригинальном движке немного по-другому, но суть та же.

использование системы поддиректорий для хранения БОЛЬШОГО количества файлов - популярное решение, использующееся во многих движках.
в свое время помогал переводить один нагруженный проект с системы "одна папка, куча файлов", на систему "древовидная система папок.в листьях - файлы"
переводили именно потому, что начались жуткие тормоза файловой системы

ну, а использовать систему поддиректорий, где отдельному пользователю будет свой участок дерева, или же размазывать их по всему дереву - дело ваше
Ответить с цитированием