Nu we hebben gekeken naar het opschonen van je website en het gebruik van een caching plugin, gaan we kijken naar de laatste en meest technische stap: het analyseren van bottlenecks in je site. Dit artikel is niet bedoeld om stap voor stap op te volgen, maar biedt je eerder een aantal handvatten aan die je kan gebruiken om zelf je site na te lopen op elementen die de processen op je site vertragen. Zoals een ketting net zo sterk is als zijn zwakste schakel, is een site zo traag als zijn langzaamste rekenopdracht.
Vaststellen van de problemen
Het kan voorkomen dat je site traag reageert. Meestal blijkt het probleem hem te zitten in een specifieke handeling die de andere handelingen op de site vertraagt. Denk bijvoorbeeld aan het opslaan van een pagina, het wijzigen van een specifieke widget of het activeren van een ander thema. Door dit uit te zoeken kan je al een hele hoop mogelijke oorzaken van je problemen schrappen en je aandacht gaan focussen op patronen. Het activeren van een ander thema vertraagt je site? Dan kan je kijken of een ander thema hetzelfde probleem veroorzaakt. Het aanpassen van een widget lukt niet? Lukt een ander widget wel? Probeer zo veel mogelijk patronen te vinden waar je problemen ziet, zo kan je vaststellen waar ze ontstaan en er actie op (laten) ondernemen.
Error en access logs
Bij Savvii heb je toegang tot je error en access logs die je ook via sFTP kan inzien. Deze logs zijn een bron van informatie voor het oplossen van problemen op je site. Op het moment dat je foutmeldingen in je error logs ziet mag je er eigenlijk vanuit gaan dat je site niet optimaal werkt. In de vorige alinea zie je dat je zo veel mogelijk naar patronen kan zoeken. Als je de error logs van je site bekijkt nadat je een handeling hebt uitgevoerd die voor problemen zorgt dan kan je vaak op het betreffende tijdstip de foutmelding vinden. Deze foutmelding kan je dan analyseren en bijvoorbeeld op Google zoeken naar mogelijke oorzaken / andere mensen die eenzelfde probleem hebben. Als voorbeeld:
2017/02/20 13:59:00 [error] ********: *###### FastCGI sent in stderr: "PHP message: PHP Notice: Undefined variable: background_image in /var/www/******-********/wordpress/current/wp-content/themes/showcase-pro/lib/page-header.php on line 29
In deze error zie je dat deze begint met de datum en het tijdstip. Kijk je wat verder dan zie je de foutmelding Undefined variable: background_image. Als je dit in Google zoekt dan vind je waarschijnlijk dat dit een programmeerfout is. Even verderop zie je dat dit gevonden wordt in het bestand page-header.php op regel 29. Dit bestand komt uit het thema showcase_pro. Zou je het thema wijzigen dan komt het probleem mogelijk niet meer terug en kan je redelijkerwijs aannemen dat het probleem in je thema zit. Of je dan vervolgens het thema wil repareren, contact op wil nemen met de thema makers of een geheel ander thema wil gebruiken is je volgende keuze. Dit is maar een heel simpel voorbeeld van het analyseren van een foutmelding. Als dit te technisch in is het aan te raden een ontwikkelaar in te schakelen. Als je bereid bent om er verder actie op te ondernemen kan je ons ook een berichtje sturen, we kunnen je mogelijk verder op weg helpen met de foutmeldingen. Vergeet hierbij niet om de foutmelding mee te sturen.
Query Monitor
Query Monitor is een fantastische plugin om de processen op je site te analyseren maar vergt redelijk wat verdieping en technische kennis.
Note: de Query Monitor plugin wil je alleen installeren en activeren om problemen te onderzoeken. De plugin analyseert erg veel en kan op zichzelf vertraging veroorzaken.
Externe snelheid tests
Er zijn (gratis) externe diensten die je opdracht kan geven om je website te bezoeken en te analyseren. Een dergelijke pagina die door ons veel gebruikt wordt is WebPagetest.org . Deze dienst bezoekt je website (een aantal keer) vanuit een door jou opgegeven locatie en geeft je een bron van informatie met onder andere laadtijden van complete pagina's en laadtijden van individuele elementen. Je kan hier goed in zien hoeveel elementen je site probeert in te laden, hoeveel KB er per element verstuurd wordt en hoe lang dit kan duren.
Voor een uitgebreide handleiding en uitleg over hoe je je resultaten kan uitlezen verwijzen we je graag naar de (Engelse) helppagina van WebPagetest.
Extra bronnen
- WP_DEBUG en geavanceerde foutmeldingen: https://codex.wordpress.org/WP_DEBUG
Alle stappen uit dit stappenplan
Updaten en opschonen van alle extra elementen van je website.
Instellen van onze Varnish caching en eigen caching plugins
Stap 3: analyseren van bottlenecks (hier ben je nu)
Een iets meer technische handleiding voor het analyseren van verdere vertragingen