![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
|
![]() |
|
Опции темы | Опции просмотра |
|
![]() |
#1 |
Guest
Сообщений: n/a
|
![]()
Как понимаю - это расширение "fastcache" - позволяет решать подобные задачи?
|
![]() |
![]() |
#2 |
Senior Member
|
![]()
Еще раз - можете использовать встроенные в ядро функции кэширования.
Подробно и с примерами (в конце) читайте http://wiki.typo3.org/Caching_framework То что вы сохраняете какой-то готовый контент в файл - это тоже кэширование. Точно также вместо файла можно использовать Memcached, APC и т.п. Может быть fastcache и упростит задачу. Но там и так просто get/set. Правда нужно понимать, что бы сделать из этого полноценный кэш нужно добавить к этому ряд функций. Например чистку кэша при общей команде "Clear Cache" из BE. Также при усложнении функциональности сайта/экста понадобиться тэггирование записей кэша и чистка по тэгам. сильно улучшает полезность кэша зависимость жизни кэша от изменения и добавления связанных записей. Например, вы отредактировали новость в BE, кэш плагина/страницы новости обновился сразу, а не через 30 минут. PS: Если вы записываете с именем time(), то как вы потом этот файл находите? Гораздо удобней использовать другие параметры для имени ключа кэша. Например у нас есть метод который реднерит Single View. В нем определяем $cache_key = md5(serialize(array(__CLASS__, __FUNCTION__, $pid, $uid))); Так у нас есть гарантия что ключ кэша (он же имя файла или ключ в memcached) не перепутается с кэшем из другой функции, или из другого класса. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]()
Возвращаясь к этой теме - очень сложно использовать Caching F в выше описанной статье...
И нашел варианты более простые: 1. http://typo3.org/extension-manuals/e....0/view/toc/0/ расширение enetcache позволяет управлять кэшированием 2. http://buzz.typo3.org/people/steffen...in-extensions/ можно использовать стандартные функции класса t3lib_pageSelect: getHash storeHash которые пишут данные в таблицу "cf_cache_hash_tags" t3lib_pageSelect - очень полезный класс, документация здесь: http://doxygen.frozenkiwi.com/typo3/...13dfaf1a0da959 А также вот еще интересные статьи: http://wiki.typo3.org/Cache http://wiki.typo3.org/Functions_for_t3lib_cache |
![]() |
![]() |
![]() |
#4 |
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]()
А еще можно на прямую, даже с выбором таблицы, в которую надо писать:
if(isset($GLOBALS['typo3CacheManager']) && $GLOBALS['TYPO3_CONF_VARS']['SYS']['useCachingFramework']) { //на всякий случай можно проверять, включено ли кэширование на основе БД (и если галочка установлена - вперед) PHP код:
PHP код:
Даже время истечения можно задать... |
![]() |
![]() |