Кэши : кто и как этим делом пользуется
greg.frolov 20.06.2002 22:20
Прямого применения (
^cache[файл](число_секунд){код}) оператору ^cache я так и не нашел в своих проектах. Может быть потому, что не вставала определенная задача. Однако, ускорить вывод данных из MySQL очень хотелось. Пришлось немного повымудряться.
Итак, прописываем кто где, а у меня в классе
elements, в который я выделяю все жизненно необходимые элементы для функционирования проекта, следующий макрос:
@cache[filename;code]
$roll[^date::now[]]
^roll.roll[day](30)
$result[
^cache[/cache/$filename][$roll]{
$code
}
]
Результатом работы которого будет всегда кэшированный код - что нам вообщем-то и нужно. Осталось самое малое - отловить что где и когда будет изменяться и вовремя удалять файлы кэша с диска (для удобства, будем размещать их в одной директории) оператором
^file:delete[/cache/имякэша]Использовать данную реализацию можно как и на форуме (тогда удалять кэш древа сообщений будем после нового постинга), так и в новостных лентах, где список новостей выбирается из базы (для чего я его и прописывал). Вообще, новостная лента - отдельная тема для публикации, и, надеюсь, если будет время и желание, напишу, как реализовывал свою идею.
ps А вообще в админ-интерфейсе сделал себе еще один раздел -
кэш-файлы, где можно вести наблюдение за тем, какие файлы созданы и по желанию грохнуть любой, одним словом, больше возможностей PARSERу, товарищи Разработчики. А вот чего бы очень хотелось увидеть, так это
загрузку файла, расположенного за пределами сервера (http либо ftp)pps А ^download есть или нет в 3ем - или я просто плохо искал?
- Кэши : кто и как этим делом пользуется, greg.frolov 20.06.2002 22:20