[TYPO3-mvc] Re: Extbase objects caching

Philipp Wrann philippwrann at gmail.com
Mon May 26 14:43:30 CEST 2014


You need to put something like that in a separat cache.

You could create a COA Object and configure it like this:

lib.list = COA
lib.list {
cache.key = generic_list
cache.tags = some,tags
cache.lifetime = 3600
10 = USER
10 {
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
extensionName = YourExtension
pluginName = YourPlugin
vendorName = Vendor
#switchableControllerActions {
#Controller {
#1 = action
#}
#}
settings {
some = setting
}
}
}

<f:cObject typoscriptObjectPath="lib.lsit" />

Or you write a fluid viewhelper that caches chunks of code.

<your_namespace:cache.get key="list">
Here comes your code
</your_namespace:cache.get>

In that viewhelper you can inject the cacheManager and handle the caching on your own. I would prefere the first variant, so you have less chunk-tables and less separat caches.

The page and contentcache of TYPO3 is based in the page, yea cause typoscript can be different and the same plugin can render differently on 2 pages.

The ObjectCache of Extbase caches reflection data, no data, all Plugins request against the database and build the objects from the sql result. There is only a first-level-cache, that increases the performance if the same object is beeing built multiple times in one request. But when the request is handled that cache gets descructed.

I once started an issue on this cause i think a entity cache would speed up extbase a lot (because Objects and their links, thumbs, etc... could be cached before a user requests them in the frontend).


More information about the TYPO3-project-typo3v4mvc mailing list