Zoek
November 2009
M T W T F S S
« Oct   Dec »
 1
2345678
9101112131415
16171819202122
23242526272829
30  

PostHeaderIcon Magento sloom?

Ben een nieuwe webshop aan het ontwikkelen. Met Magento. Leuk pakket, maar wel een beetje langzaam zonder performance tuning. De initiële test (clean install, geen data toegevoegd) gaf gemiddeld over drie opvragingen 7.083 seconden loading time. De tweede test gaf over drie opvragingen van de homepage 4.403 seconden loading time. Hoe is die performancewinst behaald?

1. Zet caching aan (logisch) in Magento. Ga naar System -> Cachebeheer. Vink alle opties aan en zet de dropdown op ‘Inschakelen’.

2. In de .htaccess in de root van de website de volgende text toevoegen. (Kijk eerst of het er al – gedeeltelijk – in staat.

<IfModule mod_deflate.c>
# Insert filter on all content
SetOutputFilter DEFLATE
# Insert filter on selected content types only

AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css text/javascript
AddOutputFilterByType DEFLATE application/xml application/xhtml+xml application/rss+xml
AddOutputFilterByType DEFLATE application/javascript application/x-javascript
AddOutputFilterByType DEFLATE opplication/x-httpd-php

#incompatible browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# MSIE masquerades as Netscape, but it is fine
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Don’t compress images
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
# Make sure proxies don’t deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>

3. In js/.htaccess zet je

<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/javascript application/x-javascript
#incompatible browsers
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
# Make sure proxies don’t deliver the wrong content
Header append Vary User-Agent env=!dont-vary
</IfModule>

4. Download fooman-speedster via magento-connect: magento-community/Fooman_Speedster. Jammer dat dan je site geen css meer kan lezen. Zet daarom in je .htaccess onder #RewriteBase /magento/ het volgende

RewriteRule ^minify/([^/]+)(/.*\.js)$ lib/minify/m.php?f=$2&$1
RewriteRule ^index.php/minify/([^/]+)(/.*\.js)$ lib/minify/m.php?f=$2&$1
RewriteRule ^minify/([^/]+)(/.*\.css)$ lib/minify/m.php?f=$2&$1
RewriteRule ^index.php/minify/([^/]+)(/.*\.css)$ lib/minify/m.php?f=$2&$1

5. Maak je catalog flat. (Flat products is alleen handig voor sites met meer dan 1000 producten.) Ga naar System-> Cache Management. Klik op Rebuild Flat Catalog Category knop onder Category. Ga daarna naar System->Configuration en klik op Catalog en selecteer Frontend. Kies Ja bij Use Flat Catalog Category. Opslaan.
6. Controleer of het volgende in je .htaccess staat. Als het er staat, controleer dan wat je in je HTTP-header terug krijgt.

<IfModule mod_expires.c>
ExpiresActive On ExpiresDefault “access plus 1 month”
</IfModule>

8. Download Magento-Compiler via magento-connect. Het is een beta, dus zet eerst je instellingen in je settings-tab op ‘beta’. Klik op ‘Run Compilation Process’ voordat je de compiler aan zet. Ja,raar he? Bij fouten kijk je hier: http://www.magentocommerce.com/boards/viewthread/45549/

Verdere tips:

  • Gebruik deze skin als basis voor je eigen wijzigingen: http://www.magentocommerce.com/extension/974/yoast-blank-seo-theme in plaats van een skin die default wordt meegeleverd. De standaard skins maken slecht gebruik van Headers.
  • Vraag je hoster om een PHP opcode cacher zoals APC of XCache te gebruiken. Gebruik het niet samen met Zend Optimiser. Ze zijn incompatibel.Ga over van Apache naar Lightspeed server (?)
  • Gebruik BrowserMob: http://browsermob.com

Met dank aan  http://www.webwinkelblog.nl/snelheid-magento-hosting/ en http://www.byte.nl/docs/Magento-Optimalisaties.html en http://www.webpagetest.org

2 Responses or references to “Magento sloom?”

  • Joris says:

    Duidelijk, daarom is het ook van groot belang om onderscheid te maken tussen psychische overmacht en overmacht noodtoestand. Niet enkel vanwege het feit dat bij de ene strafuitsluitingsgrond sprake is van een rechtvaardiging van het feit en bij het andere van een schuldeloosheid van de dader, maar bovendien moet in ogenschouw genomen worden dat bij de noodtoestand sprake moet zijn van een van buiten komende dwang, een noodzakelijk keuze tussen twee kwaden, terwijl bij de psychische overmacht enkel de aard van de door omstandigheden veroorzaakte psychische nood moet worden beoordeeld (naast een vereiste causaliteit tussen die omstandigheden en het latere delict).

  • Kim says:

    hahaha

Leave a Reply