[TYPO3-dev] Apache/PHP TYPO3 Caching-Module

Bernhard Kraft kraftb at think-open.at
Sun Mar 14 11:09:46 CET 2010


Jigal van Hemert wrote:

> With all the communities, portals, social networking sites, etc. it 
> becomes increasingly important to show dynamic content in a page. 
> Caching entire pages is not what today's website need. In many cases the 
> contents generated by a plugin could be cached under certain conditions 
> (for a limited time, per user, per group, ...) but you need a caching 
> framework which can support this.

You speak (write) out of my mind :)

Whenever you create a community site, a lot of work has to go into a 
clever caching mechanism. You'll either have to set every page 
containing a guestbook, etc. to "no cache", or take hours into account 
to properly clear cache for single pages probably pages with special 
tags so the CMS does not have to regenerate every page.

I guess here is the border between what one usually calls a CMS and what 
a portal or community engine could be ... You just awoke some 
connections in my brain which seem to have tought about all this stuff 
already a long time !!

What flasehd to my mind right now: I guess every one of us was faced 
with the problem to dynamically generate some small parts of content and 
deliver it to the browser via AJAX. Like new messages on facebook, etc.

Usually one starts to create an eID plugin generating the required 
content. My idea right now, was to create some kind of predefined 
content generator just for this purpose. Of course it should be some eID 
script, but the content should get generated out of HTML templates and 
TypoScript code like usually. But faster ;)


> Then again, you also need a caching framework which is fast enough to 
> beat the extension in creating the content ;-)
> 
> I can't imagine how an external caching proxy can help in caching 
> partially "cacheable" pages and possibly caching content blocks...

This is what I meant when talking about writing an apache or php module 
for caching TYPO3 pages. It has to take all all specialities of TYPO3 
pages into account, like Usergroups, Conditions and Expire-Times (If you 
do a little investigation into tslib-fe you'll know thath these three 
(3) things are the only ones relevant to determin if a page can get 
served from cache.

Of course there are still _INT objects - and if tslib_fe recognizes _INT 
markers in the cached content it will start generating them. But many 
_INT objects could make a site slower than generationg the complete 
page, as every _INT object consists of a serialized "cObj" stored in the 
database.


I guess it would be time for some kind of Community/Portal Engine for 
TYPO3. Don't you think so? And of course this would also mean to have a 
way of properly serving cached pages without having to configure a 
reverse proxy etc for hours.


greets,
Bernhard




More information about the TYPO3-dev mailing list