Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Автоматическая очистка кэша.
 
 автор: Loki   (27.07.2009 в 17:14)   письмо автору
 
 

Живет себе сайт - не тужит. Обрабатывает себе запросы от пользователей и складывает их в кэш. Кэш растет и пухнет как на дрожжах. Причем, что самое обидное, много места занимает устаревший кэш редко запрашиваемых страниц (допустим, архив форума). А хостинг дурацкий - и на место там ограничение и на количество файлов... значит надо умерить аппетиты кэша!
Вот тут возникает трудность: при достижении некоего порога, надо удалить из кэша лишнее (пусть будут самые старые файлы, например).
То есть надо проверять событие при вызове страницы пользователем, либо по крону. А файлов у нас в кэше много... 10 000... а может 20 000, а может и все сто:) Естественно, если все это будет перетряхиваться при входе пользователя, то он состариться гуляя по сайту.
Если же делать все тоже самое по крону, то нужна "панель кроноуправления". Из веб приложения это, как правило, не реализовать. Значит надо лезть в панель хостинга, а еще хуже - на сервер по ssh, а владелец сайта у нас глупый и криворукий.
Вот такая вот задачка. Можно ли накормить волков, не пожертвовав овцами?

  Ответить  
 
 автор: Trianon   (27.07.2009 в 17:39)   письмо автору
 
   для: Loki   (27.07.2009 в 17:14)
 

Можно обеспечить взаимодействие между панелькой и запланированным в кроне скриптом через БД

  Ответить  
 
 автор: Loki   (27.07.2009 в 17:51)   письмо автору
 
   для: Trianon   (27.07.2009 в 17:39)
 

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

  Ответить  
 
 автор: Trianon   (27.07.2009 в 18:11)   письмо автору
 
   для: Loki   (27.07.2009 в 17:51)
 

Я имел в виду собственную веб-панельку.

Или ты про то, что мир несовершенен?
Ну это - да, согласен.

  Ответить  
 
 автор: Саня   (27.07.2009 в 21:59)   письмо автору
 
   для: Loki   (27.07.2009 в 17:51)
 

Вебкрон сгодится как универсальное решение?

  Ответить  
 
 автор: Loki   (27.07.2009 в 22:07)   письмо автору
 
   для: Саня   (27.07.2009 в 21:59)
 

Это не решение, это костыль. Точно такой же можно прикрутить и в пределах собственного сайта.

  Ответить  
 
 автор: Axxil   (27.07.2009 в 23:07)   письмо автору
 
   для: Loki   (27.07.2009 в 17:14)
 

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

Но это если сайт нормально индексируется.

Ну а если посещаемость приличная, то можно разделить задачу на всех. Т.е. при каждом "хите" удалять, скажем 100 файлов. Обратно распределённый крон получится :)

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

  Ответить  
 
 автор: Loki   (27.07.2009 в 23:33)   письмо автору
 
   для: Axxil   (27.07.2009 в 23:07)
 

Спасибо! С роботами идея забавная:)
Распределить на всех, как я понимаю, не получится. Ибо, одна из основных задач - оценка места занимаемого кэшем, а вторая трудоемкая задача - определение устаревших файлов. Незаметно для посетителя это сделать врятли получится... либо надо каким-то образом вести статистику использования кэша... А вот роботам - действительно все равно сколько времени формируется страница:)

  Ответить  
 
 автор: Axxil   (27.07.2009 в 23:59)   письмо автору
 
   для: Loki   (27.07.2009 в 23:33)
 

> А вот роботам - действительно все равно сколько времени формируется страница

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

Если весь файловый кеш в одной папке лежит, то я лично плохо представляю как сто тыщ файлов обходить каждый раз. Может имеет смысл индекс кеша сделать в БД, например? Гораздо быстрее должно быть.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования