[TYPO3-dev] set_no_cache is bad. What's next?
Martin Kutschker
martin.kutschker-n0spam at no5pam-blackbox.net
Mon Apr 2 10:55:46 CEST 2007
Steffen Kamper schrieb:
> "Martin Kutschker" <martin.kutschker-n0spam at no5pam-blackbox.net> schrieb im
> Newsbeitrag
> news:mailman.1.1175458083.11183.typo3-dev at lists.netfielders.de...
>> Steffen Kamper schrieb:
>>> "Dmitry Dulepov" <9f4eetb02 at sneakemail.com> schrieb im Newsbeitrag
>>> news:mailman.1.1175173443.25187.typo3-dev at lists.netfielders.de...
>>>> Hi!
>>>>
>>>> From time to time I see that people try to use $TSFE->set_no_cache() in
>>>> extensions. You know what happens next: no caching for pages,
>>>> performance is terrible, web server is not responding, etc. At the same
>>>> time, sometimes, in really rare cases caching must be disabled. But
>>>> definitely not this way from extensions.
>>>>
>>>> Should we change this function in some way? Should it explain people
>>>> that using it is no-good?
>>>>
>>>> Personally I would vote for radical methods like (1) keeping it but
>>>> emptying or (2) writing commented phrase inside generated FE page that
>>>> set_no_cache was used, so do not expect good performance.
>>>>
>>>> Any other ideas/opinions?
>>>>
>>>> --
>>>> Dmitry Dulepov
>>>>
>>>> Web: http://typo3bloke.net/
>>>> Skype: callto:liels_bugs
>>>>
>>>> "It is our choices, that show what we truly are,
>>>> far more than our abilities." (A.P.W.B.D.)
>>> Ok, here i have a question for a special case, and alos an example, that
>>> shows the difficults of right caching:
>>>
>>> On a list-view with a form, that filters the records, what is the best
>>> technique that the search results will be cached ?
>> Store the search result somewhere. Possible locations are the session or a
>> table. If you use a table you can share the results of popular searches
>> across sessions.
>>
>> I thought about creating this for the indexed search. and I even thought
>> about making a framework for other extensions. Maybe this is something for
>> ECT?
>>
>> Masi
>>
>
> hi Masi,
>
> sounds interesting, i'm not sure how this can be handled. Storing search
> results in a session is quite easy, but how do you present this on pages ?
> Storing search result in tables may be a good idea, but it sounds nearly
> same like creating cHashes for piVar-combinations.
>
> Can you give us a deeper thought of this ?
For displaying the search result you need a USER_INT (possibly a
USER_INT within a USER) so that no cHashes are needed. Cached are only
the raw data, not the formatted output of the search. I don't think this
is a big problem as a search result is usually shorted lived.
The point is that you create from the search query (piVars) a key for
the search result. Whenever the PI has to show a result it will look it
up in the search cache. In this cache only the ids of the found rows are
stored (sorted!).
Masi
More information about the TYPO3-dev
mailing list