[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Объясните пожалуйста, что такое кеш файлов
Espey
Объясните пожалуйста, что такое кеш файлов, от чего зависит его размер.

_____________
www.godbook.cc.ua — Новый Завет!
Arh
Espey
Может файловый кэш?
Кэш, который храниться в файле (может ещё в оперативке храниться "memcache").
Зависит от количества файлов и размера их данных.

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

Работает так:
Скрипт проверяет есть ли данные в кэше, если есть, берёт из кэша, если нет, то получает обычным способом и сохраняет в кэш.
Что бы обновить список новостей, нужно после добавлении новости удалить кэш. Или удалять кроном.

Так без кэша.

$data = $News->getLast(); // Получить последние новости
return $data;


Так с кэшем.

// Условие сработает если кэш ничего не вернул, а если вернул, то данные будут в $data и соответственно условие не сработает
if (!$data = $Cache->get('last')) {

$data = $News->getLast(); // Получить последние новости
$Cache->set('last', $data); // Сохранить в кэш

}

return $data;


Удаление кэша при добавлении новости
$news = [
'title' => 'Новость',
'content' => 'Хорошая погода'
];

$News->add($news); // Добавить новость
$Cache->delete('last'); // Удалить кэш


_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
Guest
Я понял спасибо.
inpost
Кэш в файлах позволяет закэшировать данные в ФАЙЛЕ.
Кэш файлов, он же кэш твоего жесткого диска. Если сделать обращения к одному файлу несколько раз подряд, то этот файл попадает в кэш и повторное обращение к нему будет невероятно быстрым. Если ничего не путаю, то именно твой жесткий диск закэширует этот файл и повторно будет отдавать очень быстро.
Файлы хранить в памяти через RamDisk, своего рода можно так же назвать "частично" кэш, а если копировать в RamDisk частые файлы, к которым постоянные обращения идут, то мы получаем копию файла, которую закэшировали в памяти.

И тут Остапа понесло, да? laugh.gif А это я ещё не расписал о MySQL, OPcache и т.д. В общем одним сообщением на форуме не рассказать о кэше, для моего курса нового мне понадобился целый час, чтобы все варианты рассказать и показать как работают (целый урок только кэшу посвященный)!

И, конечно же, ты услышал фразу вырванную из контекста, или окончания не те воспринял. Кэш файлов или кэш в файлах? Это разные вещи, и каждая из которых имеет смысл и про каждую надо рассказывать в отдельности.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.