Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > как лучше хранить кэш


Автор: dark_religion 18.6.2011, 20:30
Привет подскажите, как лучше хранить кэш в файлах или в базе? Какие ньюансы этого всего дела.

У меня очень большое количество файлов очень большого размера 4 500 000 ну а размер файла 50-400 кб

То есть хочу кешировать полностью страницы. 

Сколько вообще рационально размещать файлов в файловой системе? Я могу их как-то по директориям разбить итд итп. Но какие вообще ньюансы по поводу файловой системы на которые стоит обратить внимание?

И кто как считает, что лучше бд или файловая система. В ситуации когда ни файловая система ни бд ненагружены.

Тут скорее ситуация не такая, что каждый файл будет использоватся часто, а такая, что вся система обновляется раз в 24 часа и каждый раз разбивать на множество запросов не имеет смысла. А в бд большие объемы данных хранятся очень тяжело.

Автор: $дмитрий 20.6.2011, 20:57
Кэш храни в файлах, не стоит БД нагружать, только разбей на подразделы, по типу:

aa/aa/md5filename1
aa/aa/md5filename2
...
aa/ab/md5filename4
aa/ab/md5filename5

Автор: ayax2005 21.6.2011, 08:06
Кэш априори нужно хранить на диске. 
Честно говоря не помню сколько именно, но вроде до 50000 файлов в одной директории хранить не накладно, но эту цифру лучше уточнить.
От количества кэшей собственно и стройте дерево подкаталогов, но не стоит делать вложенность больше 3.

Да ,и почему обязательно обновлять весь кэш каждый день? Может быть стоит просто выделить в отдельный кэш едеждевно изменяющиеся блоки?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)