History: Performance
Source of version: 68 (current)
Copy to clipboard
! Performance __To access__: Click the __Performance__ icon {icon name="admin_performance" size="2" title="Image may vary depending on icon set in use."} on the ((Admin Panels|Admin Panel)) %%% or Access __http://example.org/tiki-admin.php?page=performance__ By default, Tiki is configured with default performance settings which should suit most contexts. For example, Tiki uses the [http://www.smarty.net/|Smarty template engine] and it has ((Smarty Cache|built-in cache)). If you find Tiki slow, this page is here to help. !! Basic tips * Don't be cheap on hardware or hosting. Get the good stuff. * Use recent versions of PHP/MySQL/Apache etc. [http://www.synet.sk/php/en/220-php-performance-benchmark|as each new version is typically faster than the previous] ** [http://sebastian-bergmann.de/archives/745-Benchmark-of-PHP-Branches-3.0-through-5.3-CVS.html|PHP 5.3 is 1.2 times faster than PHP 5.2 for raw execution speed] ** Use the latest stable Tiki version or LTS version (but you should be doing this anyway even without performance concerns) * Use OPcache, which is now the de facto standard starting in PHP 5.5 (and installable on older versions). If that is not working, use APC or XCache (see below) * Turn off any feature you are not using * Use the ((Performance Admin Panel)) at tiki-admin.php?page=performance where you can configure the various performance-related settings, including ((Content Delivery Network)). Otherwise, most performance tuning is done by tweaking the server (outside the scope of Tiki) * Increase the "memory_limit" of your PHP instance (128M is the default) * Think also about configuring your web server (for example, setting a long expiry date for images, css and js files) * ((Tiki5)) has many enhancements related to ((dev:YSlow)) tests ** Activate ((htaccess)) * http://blog.lphuberdeau.com/wordpress/2010/03/24/improving-rendering-speed/ * Use a free tool like gtmetrix.com to measure the impact of your optimisations on the loading speed of your site. * If you run into trouble, check ((Troubleshooting)). !! Real User Measurement * ((Real User Measurement)) !! Minify JavaScript * ((Minify JavaScript)) !! Minify CSS * ((Minify CSS)) !! Apache (httpd.conf) * ((httpd.conf)) !! PHP Settings (php.ini) * ((php.ini)) !! Accelerating PHP !!! OPcache * ((OPcache)) !!! Alternative PHP Cache (APC) * ((APC)) !!! XCache * ((XCache)) !!! eAccelerator * ((eAccelerator)) !! Memcached * ((Memcached)) !! Redis * ((Redis)) !! Database performance This is a ((troubleshooting)) guide for database performance. !!! MySQL MySQL has a slow queries feature which is accessible via a log or at the command line. Please [http://dev.mysql.com/doc/refman/5.0/en/slow-query-log.html|read the MySQL manual page] to enable this feature. Using the information in MySQL's [http://dev.mysql.com/doc/refman/5.0/en/optimization.html|chapter on optimization], look for places where indexes may improve the database access speed. Add an index, then re-test. If you think you've found an improved indexing scheme, please open a tracker item on dev.tiki.org. In tiki-admin.php?page=general, you can activate __Log SQL__ and set __Log queries using more than (seconds):__ !!! MySQL replication * ((MySQL replication)) !! Related pages * ((Compression)) * ((Link Cache)) !! Related links * http://www.webpagetest.org/ * http://www.showslow.com/ * http://gtmetrix.com/ * https://www.dotcom-tools.com/ * https://www.ohloh.net/tags/stress-testing * [http://perl.apache.org/docs/1.0/guide/performance.html#Performance_Tuning_by_Tweaking_Apache_Configuration|mod_perl Performance Tuning] (This is a page about mod_perl tuning, just ignore the perl stuff and look at the apache tweaks in there.) * [http://aktuell.de.selfhtml.org/artikel/server/apachetuning/index.htm#a10|Häuptling Schnelles Wiesel: Wirksames Tuning für viel besuchte Webauftritte] Additional apache tuning for sites with much traffic (in German) * http://www.joedog.org/siege-home/ * http://blog.lavoie.sl/2012/09/protect-webserver-against-dos-attacks.html -=Alias=- * (alias(Tikiwiki Performance Tuning)) * (alias(Database performance))