[TYPO3-english] TYPO3 6.x caches and performance best practices for productive site

Steffen Gebert steffen.gebert at typo3.org
Sat Mar 2 14:52:37 CET 2013

Hash: SHA1

Hi Domi,

sorry.. this mail got weird.. looks like not all runs are the same type
request of request, but they don't seem to be all the same

The first dumps look like a lot of the time is spent for TS parsing.

What I find astonishing are the ~1000 calls to
idna_convert::utf8_to_ucs4. This are the top-most non-native function,
called by TYPO3\CMS\Core\Utility\GeneralUtility::isValidUrl

Are you using an international domain name (just for curiosity)?
Otherwise we could try to reduce the calls to this function.
isValidUrl() costs >10% of your request time.
By briefly looking at the call hierarchy, these calls originate from
concatenating CSS and JS files. Have you tried disabling these? You
could give EXT:scriptmerger a try, which does some things better than
the core routines.

Looking at the aggregate (supply
as GET parameter) identifies mysql_query is pretty often called, mostly
cause by realurl.

Sorry, it's had to look at the statistics without knowing some details
of the runs and the setup.

I can recommend you setting up http://xhprof.io, when you make that
publicly available, I can have a look again.

Kind regards

- -- 
Steffen Gebert
TYPO3 Server Administration Team Member

TYPO3 .... inspiring people to share!
Get involved: http://typo3.org

I work for TYPO3 solely in my spare time. If you think that
my work helps you running your business, you are invited to
send me a donation via PayPal to this email address. Thanks

On 3/1/13 12:07 PM, Domi wrote:
> Hi Steffen
>> Would you mind uploading the cachegrind file somewhere (btw. the XHProf
>> file would be like 1000 times smaller ;-))
> Here the links from my XHProf, thanks for looking at it:
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072cc2bea0.typo3
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072d20fc59.typo3
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072da0875b.typo3
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072da61176.typo3
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072e8b2be7.typo3
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072ea2461d.typo3
> http://dl.dropbox.com/u/4117055/typo3cachegrind/xhprof/513072eb9970a.typo3
>> typolink is a very bad function in terms of SQL queries, but there are
>> two improvements:
>> In 6.0, the rootline cache is back.
> What does it means exactly? I will have a multidomain setup with:
> www.domain.de
> www.domain.com
> I still haven't done the proper setup for rewriting the urls, curently
> its still
> www.domain.de
> www.domain.de/en/
>> For 6.1, I contributed a sys_domain (runtime) cache, which prevents
>> couple of queries in case of config.typolinkEnableLinksAcrossDomains
>> http://forge.typo3.org/issues/24389
>> Once RealURL is using that, another big amount of redundant queries can
>> be saved.
>> You might want to backport this, if you have lots of queries to
>> sys_rootline.
> I can use 6.1 actually, I wouldn't mind. Tried it couple of days ago in
> my installation because of a frustrating extbase multilanguage bug.
> What would you recommend to improve the caching for typolink, currently
> I am not using
> config.typolinkCheckRootline=1
> config.typolinkEnableLinksAcrossDomains = 1
> Regards,
> Dominic
Version: GnuPG/MacGPG2 v2.0.19 (Darwin)
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/


More information about the TYPO3-english mailing list