OPcache is een versneller voor PHPPHP is de programmeertaal waarmee veel websites, zoals WordPress-sites, hun pagina's maken op het moment dat een bezoeker erom vraagt.: de server bewaart de kant-en-klare code van je site in het geheugen, zodat pagina’s sneller klaar zijn. Je merkt het aan een snellere site en een server die minder hard hoeft te werken.
Wat is OPcache?
Voor een WordPress-site, die per paginaweergave tientallen PHP-bestanden laadt, scheelt dat veel herhaald werk.
PHP voert je bronbestanden niet rechtstreeks uit. Het compileert elk bestand eerst naar een tussenvorm en voert die dan uit. Zonder cache gebeurt dat opnieuw bij elk verzoek en elk bestand. OPcache zet het gecompileerde resultaat in gedeeld geheugen, zodat het volgende verzoek de compileerstap kan overslaan.
Het gevolg is dat dezelfde site per paginaweergave minder processortijd gebruikt en sneller antwoordt, zonder dat de code verandert. Het is geen paginacache. Het bewaart geen kant-en-klare pagina’s, alleen de gecompileerde code die ze maakt.
De instellingen die ertoe doen
Een paar instellingen in php.iniphp.ini is het instellingenbestand van PHP, waarin staat hoeveel ruimte en tijd je website krijgt en of foutmeldingen op het scherm verschijnen. bepalen hoe OPcache zich gedraagt. opcache.enable zet hem aan. opcache.memory_consumption bepaalt hoeveel geheugen hij mag gebruiken. opcache.validate_timestamps en opcache.revalidate_freq regelen hoe vaak hij controleert of een bestand is veranderd. Op productieservers zetten sommige hosts die controle voor de snelheid uit, waardoor na elke codewijziging een reset nodig is.
OPcache en je WordPress-site
Meestal merk je niets van OPcache, en dat is de bedoeling. Je merkt hem in twee situaties. De eerste is een trage site waarbij OPcache uit of te klein is. De tweede is dat je plugins of kernbestanden bijwerkt en het oude gedrag lijkt te blijven, omdat de cache nog de oude gecompileerde versie bewaart.
Ook bij een update van de PHP-versie speelt de cache mee. Elke PHP-versie heeft een eigen OPcache, en een herstart van PHP-FPMPHP-FPM is een programma op de server dat de PHP-code van je website uitvoert en de afgemaakte pagina doorgeeft, zodat bezoekers hem zien. maakt hem leeg. Na een overstap zijn de eerste verzoeken trager terwijl de cache zich opnieuw vult.
Zo controleer je OPcache
Open een phpinfo-pagina en zoek de sectie “Zend OPcache”. Daar staat of hij aanstaat, hoeveel geheugen in gebruik is en hoeveel scripts erin zitten. Sommige hostingpanelen tonen hetzelfde bij de PHP-instellingen. Verwijder de phpinfo-pagina daarna weer. Let vooral op het percentage dat in gebruik is en op het aantal gemiste scripts, want een cache die voortdurend vol zit, doet zijn werk maar half.
Staat hij uit, vraag je host dan om hem aan te zetten. Zit het geheugen bijna vol, vraag dan om een grotere toewijzing. Pas de waarden op een gedeelde server niet op goed geluk aan, want de juiste getallen hangen af van het totaal aantal bestanden dat je sites laden.
Wanneer je actie onderneemt
Kijk naar OPcache als pagina’s zonder duidelijke reden traag zijn, na een PHP-update, of als codewijzigingen niet doorkomen. Vraag je host bij een trage site dus niet alleen naar meer rekenkracht, maar ook of OPcache aanstaat en genoeg geheugen heeft. Zie het als één onderdeel van het geheel, naast je PHP-versieEen PHP-versie is het nummer van de uitgave van PHP waarop jouw website draait, zoals 8.3. en je hostingWebhosting is de dienst die jouw website op een computer zet die altijd aan staat en met internet verbonden is, zodat bezoekers hem kunnen openen.. Een nieuwere PHP-tak is meestal sneller, en onze hulp bij je PHP-versie updaten regelt de versie en controleert dat de cache na de overstap werkt.
Veelgestelde vragen
Is OPcache hetzelfde als een paginacache?
Nee. OPcache bewaart gecompileerde PHP-code. Een paginacache bewaart kant-en-klare pagina's. Ze werken op een ander niveau en je kunt ze samen gebruiken.
Staat OPcache standaard aan?
OPcache wordt met PHP meegeleverd, maar werkt alleen als de extensie is geladen en in de configuratie aanstaat. De meeste hosts regelen dat. Kijk voor zekerheid op de phpinfo-pagina bij de sectie OPcache.
Waarom zie ik na een update nog oude code?
OPcache kan de oude gecompileerde versie van het bestand nog bewaren. Een reload van PHP-FPM of een OPcache-reset maakt hem leeg. Sommige hosts doen dit automatisch na een uitrol.
Kan OPcache fouten veroorzaken?
Zelden. Is het geheugen dat voor OPcache is gereserveerd te klein, dan raakt het vol en zakken de prestaties. De phpinfo-pagina en de tools van je host laten zien hoe vol het is.