↑ Terug naar Technische tips

Magento Profiling

De meesten van jullie hebben er waarschijnlijk last van dat bepaalde Magento-pagina’s een stuk trager zijn dan andere.

De performance van onze servers wordt voortdurend in de gaten gehouden door automatische monitoringsystemen en ook door engineers die de grafieken bekijken. We zorgen ervoor dat de server niet traag wordt, en als één account voor problemen zorgt, bellen we direct de betreffende klant op om een oplossing te zoeken.

Wanneer bepaalde pagina’s traag zijn, zit het probleem in de meeste gevallen in de PHP-bestanden of in een extensie van Magento. Zeker bij uitgebreide shops kan het erg veel tijd kosten om dat probleem te traceren. Maar als je als ontwikkelaar de juiste tools in handen hebt, kan dat een hoop speurwerk schelen.

De ingebouwde Magento Profiler is zo’n handige tool voor ontwikkelaars.

Om jullie te helpen om de bottlenecks van trage pagina’s sneller te vinden, heb ik een uitleg geschreven over deze tool.

Hoe gebruik je de Magento Profiler?

  • Profilen doe je op de Staging site, nooit op de live-site.
  • Pas het index.php-bestand in de root directory aan en zet daarin de volgende regel aan (# ervoor weghalen):
    Varien_Profiler::enable();
  • Ga via de Magento Admin naar:
    System > Configuration > ADVANCED > Developer > Debug

    • Zet daar “Profiler” op “Yes“.
  • Ga via de Magento Admin naar:
    System > Configuration > ADVANCED > Developer > Developer Client Restrictions

    • Zorg dat het vakje leeg is.
  • Check deze twee settings ook als je links boven de ‘Configuration Scope’ op de specifieke Store View zet.
  • Ga via de frontend naar de pagina die traag is.
  • Onder aan de pagina verschijnt een hele tabel met informatie over de Magento-onderdelen.
  • Kopieer de tabel in Excel. Mocht dat niet goed werken, probeer het dan vanuit Internet Explorer.
  • Sorteer in Excel de tabel op de kolom “Time”, aflopend.
  • Je ziet steeds hoeveel tijd een onderdeel gekost heeft. Maar let op: sommige onderdelen bevatten ook weer andere onderdelen, en dat is niet te zien in deze tabel.
  • Kijk door de tabel van boven naar beneden.
  • Als je de tijd na een bepaald onderdeel veel kleiner ziet worden, is dat onderdeel waarschijnlijk de boosdoener. Het is dan namelijk zo dat het onderdeel zélf veel tijd heeft gekost.
  • Hieronder zie je vrij algemene dingen; deze bevatten sowieso nog andere onderdelen, dus zijn meestal niet de boosdoener:
    • mage
    • mage::dispatch::routers_match
    • mage::dispatch::controller::action::*
    • frontend/default/*/template/page/*columns-left.phtml

 

Meer informatie over de Profiler:

http://inchoo.net/ecommerce/magento/keeping-your-magento-fit-with-built-in-profiler/