DEPRECATION WARNING
This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.
EXT: KB Quick FE¶
Author: | Kasper Skårhøj |
---|---|
Created: | 2002-11-01T00:32:00 |
Changed: | 2006-07-22T04:14:54 |
Author: | Bernhard Kraft |
Email: | kraftb@kraftb.at |
Info 3: | |
Info 4: |
EXT: KB Quick FE¶
Extension Key: kb_quickfe
Copyright 2000-2002, Bernhard Kraft, <kraftb@kraftb.at>
This document is published under the Open Content License
available from http://www.opencontent.org/opl.shtml
The content of this document is related to TYPO3
- a GNU/GPL CMS/Framework available from www.typo3.com
Table of Contents¶
EXT: KB Quick FE 1
Introduction 1
What does it do? 1
Installation 1
Notes 1
Known problems 2
Improvements 2
Sponsoring 2
Changelog 2
Introduction¶
What does it do?¶
This extension creates a "quicker" cache for FE pages which have no USER_INT or PHP_INT TS objects included and will not deliver pages which have set the &no_cache=1 flag from this "quick" page but rather let them get handled the traditional way.
So this is more or less a cache-wrapper for TYPO3 which should work with almost any setup if you respect the notes below.
Since version 0.1.0 it will also work with realURL, simulateStatic and other similar URL translators. Since this version also pages with INT (USER_INT,COA_INT,SCRIPT_INT) can get cached and rendered properly - altough the speed gain is not that much in this case.
Installation¶
Simple and easy to install (2 steps)
- Install the Extension via the Extension-Manager an let it create the required directory in typo3temp.
- If you wish use an URL translator like realURL or simulateStatic then enable the option "URL Translation Support". When you have _INT objects like COA_INT or similar on your pages and you want those pages also to get cached check the option "INT object support". WARNING: When this option get's enabled a large amount of disk- space get's used for every single cached page with _INT objects on it. The required amount is about 200-300 KB per page. So only enable this if you do not have _INT objects on all pages or do not have many pages. You can use the "saveSpace" option to reduce the required space by setting it to a value higher than 0 (but not bigger than 5). This will strip away unneeded data before saving. If your COA_INT objects do not work after increasing this value decrease it again. When setting it to 5 the objects will have about 80 KB.
- Finally backup your index.php in your typo3-web-root and copy over the index.php from the extension-directory over your "original" TYPO3 index.php. If you checked the option "URL Translation Support" and wish to use an URL translator like realURL or similar do not copy the file "index.php" but rather copy over "index_trans.php" and rename it to "index.php"
Notes¶
- You will need to be logged out of the TYPO3 backend. If you do have USER_INT (or other _INT TS cObjects) on your page it will also not get quick-cached (except if enabled).
- To remove the BE-cookie you can either do this manually using your browsers menus or simply log into and out of the TYPO3 backend (a login-timeout is not sufficient - in such a case the be-cookie stays set). CORRECTION: It seems as loggin out is also not sufficient - so if you have been logged in before (it seems even visiting the login page is enough to get a cookie :( ) and have a "be_typo_user" cookie set for the current domain: delete it.
- If you have pages without ANY condition you will also notice even more improvement in rendering time.
- When you use condition constructs like "[globalVar = TSFE:bla|whatever]" in your conditionts you should note that TSFE is not available. So those condition will always result as if they were 0. You should rather use "[globalVar = GP:id=123]" because the GP vars will be available. (Some TSFE variables like TSFE->fe_user->user['uid'], TSFE->loginUser, TSFE->id are execptionally available for more compatibility)
Known problems¶
Does not work with realURL or simulateStatic.
Improvements¶
Without any PHP Accelerator you should notice an improvement that your cached pages get delivered between 5 and 20 times faster than before (at least the reaction time is higher - how fast they can get delivered depends also on the internet-connection of your server).
Here are outputs of the apache2 benchmarking tool “ab2” with and without the patch.
Without patch¶
A simple TV page with some Flexible content elements.
Without patch
With patch/extension installed
With patch/extension installed
Document Length: 14346 bytes¶
A simple TV page with some Flexible content elements.
Document Length: 14346 bytes
Concurrency Level: 10
Time taken for tests: 10.969134 seconds
Complete requests: 500
Failed requests: 0
Write errors: 0
Total transferred: 7320159 bytes
HTML transferred: 7216038 bytes
Requests per second: 45.58 [#/sec] (mean)
Time per request: 219.383 [ms] (mean)
Time per request: 21.938 [ms]
(mean, across all concurrent requests)
Transfer rate: 651.65 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.3 0 4
Processing: 61 215 78.5 211 655
Waiting: 57 213 77.9 208 654
Total: 61 215 78.5 211 655
Percentage of the requests served within a certain time (ms)
50% 211
66% 237
75% 256
80% 275
90% 309
95% 351
98% 416
99% 484
100% 655 (longest request)
With patch/extension installed
Document Length: 14346 bytes
Concurrency Level: 10
Time taken for tests: 2.329082 seconds
Complete requests: 500
Failed requests: 0
Write errors: 0
Total transferred: 7254500 bytes
HTML transferred: 7173000 bytes
Requests per second: 214.68 [#/sec] (mean)
Time per request: 46.582 [ms] (mean)
Time per request: 4.658 [ms]
(mean, across all concurrent requests)
Transfer rate: 3041.54 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 2 6.1 0 31
Processing: 3 43 87.9 5 499
Waiting: 0 42 87.2 3 498
Total: 3 45 88.3 5 499
Percentage of the requests served within a certain time (ms)
50% 5
66% 35
75% 36
80% 49
90% 174
95% 266
98% 377
99% 422
100% 499 (longest request)
Speed = 100%¶
A simple TV page with some Flexible content elements.
Speed = 100%
With patch/extension installed
Speed = 470%
Without patch¶
A simple TV page with some Flexible content elements.
Without patch
With patch/extension installed
With patch/extension installed
Document Length: 10206 bytes¶
A simple TV page with some Flexible content elements.
Document Length: 10206 bytes
Concurrency Level: 10
Time taken for tests: 10.372374 seconds
Complete requests: 500
Failed requests: 0
Write errors: 0
Total transferred: 5206500 bytes
HTML transferred: 5103000 bytes
Requests per second: 48.20 [#/sec] (mean)
Time per request: 207.447 [ms] (mean)
Time per request: 20.745 [ms]
(mean, across all concurrent requests)
Transfer rate: 490.15 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 60 202 69.7 200 464
Waiting: 59 199 67.9 196 381
Total: 60 202 69.7 200 464
Percentage of the requests served within a certain time (ms)
50% 200
66% 230
75% 251
80% 261
90% 299
95% 323
98% 344
99% 372
100% 464 (longest request)
With patch/extension installed
Document Length: 10206 bytes
Concurrency Level: 10
Time taken for tests: 1.974188 seconds
Complete requests: 500
Failed requests: 0
Write errors: 0
Total transferred: 5194869 bytes
HTML transferred: 5113206 bytes
Requests per second: 253.27 [#/sec] (mean)
Time per request: 39.484 [ms] (mean)
Time per request: 3.948 [ms]
(mean, across all concurrent requests)
Transfer rate: 2569.66 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 3 38 58.2 31 510
Waiting: 2 37 57.9 31 509
Total: 3 38 58.2 31 510
Percentage of the requests served within a certain time (ms)
50% 31
66% 37
75% 42
80% 48
90% 75
95% 100
98% 308
99% 366
100% 510 (longest request)
Speed = 100%¶
A simple TV page with some Flexible content elements.
Speed = 100%
With patch/extension installed
Speed = 525%
Without patch¶
A simple TV page with some Flexible content elements.
Without patch
With patch/extension installed
With patch/extension installed
Document Length: 9219 bytes¶
A simple TV page with some Flexible content elements.
Document Length: 9219 bytes
Concurrency Level: 10
Time taken for tests: 28.560627 seconds
Complete requests: 500
Failed requests: 0
Write errors: 0
Total transferred: 4713000 bytes
HTML transferred: 4609500 bytes
Requests per second: 17.51 [#/sec] (mean)
Time per request: 571.213 [ms] (mean)
Time per request: 57.121 [ms]
(mean, across all concurrent requests)
Transfer rate: 161.13 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 1
Processing: 44 557 370.7 445 2400
Waiting: 38 516 304.6 434 2172
Total: 44 557 370.7 445 2400
Percentage of the requests served within a certain time (ms)
50% 445
66% 517
75% 560
80% 637
90% 1111
95% 1265
98% 1910
99% 2141
100% 2400 (longest request)
With patch/extension installed
Document Length: 9219 bytes
Concurrency Level: 10
Time taken for tests: 18.71439 seconds
Complete requests: 500
Failed requests: 0
Write errors: 0
Total transferred: 4691000 bytes
HTML transferred: 4609500 bytes
Requests per second: 27.67 [#/sec] (mean)
Time per request: 361.429 [ms] (mean)
Time per request: 36.143 [ms]
(mean, across all concurrent requests)
Transfer rate: 253.49 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 32 288 358.3 198 2885
Waiting: 24 231 219.1 186 1865
Total: 32 288 358.3 198 2885
Percentage of the requests served within a certain time (ms)
50% 198
66% 335
75% 337
80% 340
90% 525
95% 860
98% 1615
99% 2312
100% 2885 (longest request)
Speed = 100%¶
A simple TV page with some Flexible content elements.
Speed = 100%
With patch/extension installed
Speed = 158%
Sponsoring¶
Money is rare in todays world – so if your company is happy to have enough of it and you find this (my) extensions useful feel free to transfer an amount which suits your taste to “ kraftb@kraftb.at ” via PayPal. Thanks for your support.
If you are a one-man freelancer show like me and have to keep track of finance yourself please do not send me your last bit of money ! I would feel bad accepting money from someone who pherhaps has even less than me. So this call is only directed to companies who are suited well enough. You can also add the sponsored money to your expenses for taxes cause I will properly pay income-taxes for the received money. So it would again be no clever idea to sponsor money for which you already paid those taxes.
Companies which have sponsored money can get listed on my website including or excluding the amount of sponsored money completely as they like. You can also contact the above email addres if you require a bill.
Changelog¶
Version :¶
Version
Version :
Date
Date :
Changelog
Changelog :
0.0.0¶
Version
0.0.0
Date
2006-06-25, 00:45 CET
Changelog
Initial release
0.0.1¶
Version
0.0.1
Date
2006-06-24, 01:45 CET
Changelog
Should also work under windows now.
0.1.0¶
Version
0.1.0
Date
2006-07-22, 04:15 CET
Changelog
Added URL translation support (realURL, etc). Added support for _INT objects.
If you find any bug please report them to kraftb@kraftb.at
EXT: KB Quick FE - 4