Vorab: Unter dem Begriff Performance verstehen wir die gesamte Leistungsfähigkeit eines Shops. Dazu zählen viele Faktoren wie Infrastruktur, optimierte Software, Caching usw. In der Performance Offensive beschäftigen wir uns zunächst mit der Basis aller von uns unterstützten Shopsysteme:
Die PHP-Ausführungszeit auf dem Server, also dem Performance-Messwert "Time To First Byte".
Wir haben uns gefragt, ob die regelmäßige Erneuerung von Server-Hardware, genau wie PHP-Updates auch, die Applikations-Performance steigern kann und welche Faktoren dabei eine Rolle spielen für die OXID-, Shopware-, Magento- und Spryker-Shops unserer Kunden.
Um möglichst vergleichbare und objektive Messwerte ermitteln zu können, haben wir uns entschieden das Commerce-Score PHP-Benchmark-Script zu nutzen. Fragst du dich wie schnell deine Hardware ist? Oder auf welchem technologischen Stand die Server sind, die du gemietet hast? Dann lade das Script einfach auf deinen Server und teste selbst:
Möchte man als Hosting-Dienstleister heutzutage Server-Prozessoren kaufen, gibt es zwei Merkmale zwischen denen man sich entscheiden muss: Die Anzahl der CPU-Kerne und die Taktfrequenz. Viele CPU-Kerne bedeutet, dass der Prozessor viele Rechenoperationen gleichzeitig durchführen kann.
Eine hohe Taktfrequenz bedeutet, dass eine einzelne Rechenoperation schneller ausgeführt werden kann. Viele CPU-Kerne und gleichzeitig eine hohe Taktfrequenz sind selbst mit modernster Bauweise nicht möglich.
Hosting-Anbieter müssen sich also entscheiden, ob ihre Server auf Kapazität (viele CPU-Kerne) oder Geschwindigkeit (hohe Taktfrequenz) optimiert werden.
Gemäß dem Hosting-Geschäftsmodell, dass gekaufte Hardware an möglichst viele Kunden vermietet werden soll, entscheiden sich die meisten Hoster für Prozessoren mit vielen Kernen und geringer Taktrate. Und genau hier liegt das Problem für performance-hungrige Onlineshops auf PHP Basis!
PHP-Code läuft typischerweise "single threaded" und sequentiell. Das bedeutet, ein einzelner Seitenaufruf benutzt immer nur einen CPU-Kern und die Ausführungsgeschwindigkeit hängt fast ausschließlich von der Taktfrequenz des Prozessors ab. Für Onlineshops heißt dies konkret:
Mit mehreren CPU-Kernen kann lediglich die Kapazität des Shops gesteigert werden, also die Anzahl der gleichzeitig möglichen Besucher im Shop. Die Seitenladezeit für jeden einzelnen Besucher kann hingegen nur durch Prozessoren mit hoher Taktfrequenz verbessert werden. Für Onlineshops ist es also absolut relevant, welche Prozessor-Modelle eingesetzt werden!
Die Performance-Optimierung von Online-Shops ist unsere Mission und der Kern unserer Philosophie. Diese setzen wir kompromisslos um und das beginnt bei der Auswahl der richtigen Server-Hardware. Im Gegensatz zu anderen Plattform-Anbietern setzen wir ausschließlich auf Geschwindigkeit optimierte Hardware ein. Die nötige Kapazität für einen möglichen Traffic-Ansturm erreichen wir, indem wir für den Shop mehrere Server mit wenigen aber dafür schnellen CPU-Kernen zur Verfügung stellen. Die hierfür benötigten Loadbalancer sind im Übrigen kostenlos in unserem Best-Practice-Bundle enthalten. Durch die Verteilung des Traffics auf mehrere schnelle Server, erreichen wir die bestmögliche Performance und Skalierbarkeit für die OXID-, Shopware-, Magento- und Spryker-Shops unserer Kunden.
AWS t2.2xlarge | Azure d8s-v3 | ScaleCommerce | |
---|---|---|---|
PHP 5.6 |
5,24s deprecated since 12 2018 |
5,00s deprecated since 12.2018 |
3,60s deprecated since 12.2018 |
PHP 7.0 |
3,23s deprecated since 01.2019 |
3,01s deprecated since 01.2019 |
2,02s deprecated since 01.2019 |
PHP 7.2 |
3,03s |
2,62s |
1,90 ms |
PHP 7.3 |
1,80s |
1,50s |
1,08 ms |
PHP 7.4 |
1,72s |
1,47s |
1,07 ms |
Die Performance von Onlineshops hängt natürlich nicht nur von der Ausführungszeit von PHP ab. Es spielen noch weitere Faktoren wie Datenbank-Abfragen und Caching eine Rolle. Die Tabelle stellt also dar, wie viel schneller dein Shop bei ScaleCommerce ist. Ebenso zeigt die Tabelle, wie groß der Unterschied allein schon in der Basis-Infrastruktur sein kann.
Als erstes sollte dein Shop auf die aktuellste PHP-Version aktualisiert werden. Eine solche Umstellung ist nicht immer einfach so möglich, aber auch deshalb gibt es uns: Wir unterstützen dabei und bringen deinen Shop mit dir und deinen Entwickler:innen auf eine performante, moderne und skalierbare Plattform.
Und das Beste ist:
Lieber tauschen wir regelmäßig die Server aus und haben die beste Performance als auf langsam veraltenden Maschinen mit enormem Aufwand kleinste Performance-Optimierungen zu machen.