210 likes | 366 Views
Optimiser les performances de Typo3. 29.06.2011. Pierre Dudoret <p.dudoret@groupe-belink.fr>. Pierre Dudoret ( aka Popy ) Ingénieur de développement Groupe Belink Profil : Expert TYPO3. T3UNI 2011. 29.06.2011. Optimiser les performances de Typo3. Introduction. Objectifs.
E N D
Optimiser les performancesde Typo3 29.06.2011 Pierre Dudoret <p.dudoret@groupe-belink.fr>
Pierre Dudoret (akaPopy) Ingénieur de développement Groupe Belink Profil : Expert TYPO3 T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Exploiter les ressources disponibles Mysql : max_connections = 256 Apache : <IfModuleprefork.c> StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 </IfModule> T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Les Ressources CPU Bande Passante Mémoire vive T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
MySQL : les index T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Configuration des caches Utilisation de « memcached » pour les caches Typo3 $TYPO3_CONF_VARS['SYS']['caching']['cacheBackendAssignments'] = array( 'cache_pages' => array( 'backend' => 't3lib_cache_backend_Memcached', 'options' => array( 'servers' => array('localhost:11211'), ) ), ); Source : http://dmitry-dulepov.com/article/how-to-enable-memcached-cache-in-typo3-43.html T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Configuration des caches Caches de requête SQL query_cache_size= 64M query_cache_type = 1 (activé pour toutes les requêtes) query_cache_type = 2 (à la demande, avec SELECT SQL_CACHE) T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Optimiseur de code (APC) apc.enabled = 1 apc.cache_by_default = 0 apc.filters = "+(^|/)(typo3|t3lib)/.*" T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Compression des fichiers Pages générées par Typo3 $TYPO3_CONF_VARS['FE']['compressionLevel'] = 7; T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Compression des fichiers Fichiers statiques (css, javascript, …) DeflateCompressionLevel7 <IfModulemod_deflate.c> <Location /> SetOutputFilter DEFLATE SetEnvIfNoCaseRequest_URI \ \.(?:gif|jpe?g|png)$ no-gzip dont-vary Header append Vary User-Agent env=!dont-vary </Location> </IfModule> T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Utilisation du cache navigateur Configuration du module « mod expires » de apache <IfModulemod_expires.c> ExpiresActive On ExpiresDefault "access plus 1 week« ExpiresByType image/* "access plus 1 month« ExpiresByTypetext/css "modified plus 1 month" ExpiresByTypetext/javascript "modified plus 1 month" </IfModule> T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Minifiers Utilisation de l’extension « scriptmerger » page.includeCSS { file1 = fileadmin/templates/…/css/style.css file2 = fileadmin/templates/…/css/red.css } plugin.tx_scriptmerger.css{ enable= 1 minify.enable= 1 compress.enable= 1 merge.enable= 1 } Source : http://developpeurtypo3.wordpress.com/2011/02/22/compression-js-css-typo3/ T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Optimisation Mémoire vive T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Requêtes SQL Libérer les résultats de requête $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery($query); while ($val = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) { [...] } $GLOBALS['TYPO3_DB']->sql_free_result($res); T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Limiter la quantité de code chargé dans Typo3 Typoscript : includeLibs.tx_monplugin_pi1 > Fichier ext_autoload.php : <?php $extensionClassesPath = t3lib_extMgm::extPath('monplugin'); return array( 'tx_extbase_dispatcher' => $extensionClassesPath . 'pi1/class.tx_monplugin_pi1.php', [...] T3UNI 2011 29.06.2011 Optimiser les performances de Typo3
Questions / Réponses T3UNI 2011 29.06.2011 Optimiser les performances de Typo3