Gepubliceerd: 20.03.2024
PHP is een van de meest gebruikte programmeertalen aan de serverzijde. Door de jaren heen zijn er veel nieuwe versies uitgekomen en dus ook veel nieuwe verbeteringen. Deze verbeteringen zijn vaak gerelateerd aan prestatieverbeteringen. In deze blog bespreken we de prestatieverbeteringen van PHP-versies 8.1, 8.2, en 8.3 die zijn gebenchmarked.
Laten we eerst kort uitleggen wat PHP Benchmarks precies zijn.
PHP Benchmarks zijn tests die worden uitgevoerd met een specifiek script dat de prestaties van PHP-code evalueert. Ze worden gebruikt om de snelheid en efficiëntie van verschillende aspecten van PHP-functies/toepassingen te meten. Zo wordt bijvoorbeeld bekeken hoe lang het duurt voor een PHP-versie om door een lus te gaan of door een if/else-verklaring te gaan.
Er zijn verschillende soorten benchmarks die kunnen worden uitgevoerd. Hier zijn enkele voorbeelden:
Hoewel er veel andere benchmarks zijn die de ontwikkeling significant kunnen beïnvloeden, zijn niet allemaal relevant om te gebruiken.
Laten we nu de prestatieverschillen van de benchmarks bespreken tussen PHP-versies 8.1, 8.2, en 8.3.
In deze drie PHP-versies is er een klein verschil te zien in de prestatieverbeteringen die mogelijk grote impact hebben op de snelheid van je website. Van versie 8.1 naar 8.3 is het 4 seconden sneller geworden. Hier zijn de benchmarkresultaten van deze drie PHP-versies.
Bron: onlinephp.io
PHP versie | Math | String Manipulatie | Loops | If / Else | Totaal Tijd (seconden) |
---|---|---|---|---|---|
8.3.4 | 4.50980 | 4.78484 | 4.83696 | 3.68246 | 17.81406 |
8.2.17 | 4.27543 | 4.63013 | 5.50051 | 4.34507 | 18.75113 |
8.1.27 | 5.32223 | 6.39273 | 5.31313 | 4.12587 | 21.15396 |
Zoals te zien is bij deze resultaten zijn er een aantal dingen die getest zijn geweest. Soms kan het zijn dat een aspect zoals Math bij PHP 8.3.4 iets trager kan worden dan de vorige versies. Dit zal in de toekomstige versies wel weer verbeteren maar in dit geval is dit geen probleem omdat de andere aspecten dit weer opvangen met een ruime prestatieverbetering. Nu is dit een verbetering maar er wordt zich wel afgevraagd of we nu ongeveer de snelste tijd hebben bereikt of zal er in de toekomst nog een grote prestatieverbetering zich voordoen? Deze vraag is ontstaan omdat we van PHP 7 naar PHP 8.1 maar een prestatieverbetering hebben van 20% terwijl van PHP 5.6 naar PHP 7 dit 400% was.
Bron: onlinephp.io
PHP versie | Math | String Manipulatie | Loops | If / Else | Totaal Tijd (seconden) |
---|---|---|---|---|---|
8.1.27 | 5.32223 | 6.39273 | 5.31313 | 4.12587 | 21.15396 |
7.0.33 | 4.29563 | 7.24797 | 8.19844 | 4.95791 | 24.69994 |
5.6.40 | 21.83867 | 19.79074 | 27.07490 | 10.01713 | 78.72144 |
Ook interessant