Leistung
Dieser Bereich ist für Systemadministratoren und Produktmanager bei Hosting-Anbietern, die möchten, dass Exponential-Websites auf ihren Maschinen schnell sind, und die Kunden erklären müssen, was in einem Tarif enthalten ist und was nicht. Er beantwortet: welche Hebel am meisten zählen, welche Caches es gibt und wer sie leert, und wie Sie vor und nach einer Änderung messen.
Zurück zu Hosting-Anbieter: hier beginnen.
Inhalt
- Die Hebel, in der Reihenfolge ihrer Wirkung
- Zuerst messen
- Seiten in diesem Bereich
- Was Hoster am häufigsten falsch machen
- Verwandte Seiten
Die Hebel, in der Reihenfolge ihrer Wirkung
Das Installationsbuch führt sie in dieser Reihenfolge auf (Kapitel 10, Abschnitt 10.12):
- Mit Velocity ausliefern und seinem Antwort-Cache. Eine zwischengespeicherte anonyme Seite wird ohne PHP beantwortet; persistente Worker halten die Anwendung, die Datenbankverbindung und die kompilierten Dateien warm.
- Den Content-View-Cache und den Template-Block-Cache anlassen (
site.ini [ContentSettings] ViewCaching=enabled,[TemplateSettings] TemplateCache=enabled, beide mitgeliefert), und die Website nach einem Leeren vorwärmen. - OPcache.
- APCu für die Speicherstufe des Antwort-Caches von Velocity und den SQL-Abfrage-Cache im Modus
shared. - Der SQL-Abfrage-Cache (
querycache.ini [QueryCacheSettings] Mode=requestodershared), auf Ihrer Website gemessen. - Die Datenbank (Kapitel 9).
Das README fügt einen Punkt hinzu, der für Hoster zählt, die Apache oder nginx behalten: Der größte Teil der Geschwindigkeit kam von Korrekturen an Exponential und am Cache, nicht vom Prozessmodell des Servers; Exponential 6.0.15+ ist auch unter Apache oder Nginx unter Last schnell. Velocity hebt die Decke weiter an; es ist nicht das, was die Anwendung schnell macht.
Zuerst messen
exp:benchmark misst Seiten über HTTP, zwischengespeichert und gerendert, und vergleicht zwei Server direkt nacheinander:
php bin/php/console exp:benchmark --save=var/benchmark/base.json --allow-root-user
# ... make one change ...
php bin/php/console exp:benchmark --baseline=var/benchmark/base.json --allow-root-userJede Zahl in diesem Bereich, die aus den Quellen stammt, ist eine Messung auf einer bestimmten Maschine und Website. Die Quellen sagen das selbst; betrachten Sie sie als Beispiele dafür, was zu messen ist, nicht als Versprechen an Kunden. Siehe Benchmark einer gehosteten Website.
Seiten in diesem Bereich
| Seite | Was sie beantwortet |
|---|---|
| Abstimmung von PHP-FPM | Pool-Einstellungen, die für Exponential zählen, Neuladen, Zeitlimits, APCu |
| OPcache | Die richtigen OPcache-Einstellungen unter PHP-FPM, Velocity und FrankenPHP, und warum sie sich unterscheiden |
| Cache-Schichten | Jeder Cache vom Browser bis zur Datenbank, wer ihn füllt und wer ihn leert |
| Antwort-Cache von Velocity | Der Cache im Elternprozess von Velocity: Einstellungen, Prüfungen, Leeren |
| HTTP-Cache-Header | Was Browser, Proxys und CDNs behalten dürfen, und der rollenbewusste HTTP-Cache |
| Varnish und Reverse Proxys | Zwischenspeichernde Proxys davor: Vertrauen, Leeren, was nicht zwischengespeichert werden darf |
| Seiten-Caching mit LiteSpeed und OpenLiteSpeed | Der in LiteSpeed und OpenLiteSpeed eingebaute Seiten-Cache für anonyme Besucher und Crawler, ohne Plugin: einschalten, Treffer prüfen, leeren |
| CDN | Ein Content Delivery Network vor Kunden-Websites stellen |
| Valkey und Redis | Die Erweiterung sevenx_valkey_cache: Caches in Redis oder Valkey |
| Statischer Cache | Als Dateien erzeugte Seiten; warum er ausgeschaltet ausgeliefert wird und wann Sie ihn nutzen |
| Caches leeren und vorwärmen | Welcher Cache für welche Änderung geleert wird, in welcher Reihenfolge, und wie Sie vorwärmen |
| Benchmark einer gehosteten Website | exp:benchmark für Hoster: faire Vergleiche, Prüfungen nach dem Ausrollen, Grenzen von Tarifen |
| Der kompilierte Kernel-Container | Was var/cache/kernelservices/ ist, wann er neu aufgebaut wird, wie Sie ihn prüfen und was er pro Anfrage einspart |
Was Hoster am häufigsten falsch machen
| Fehler | Wirkung | Seite |
|---|---|---|
opcache.validate_timestamps=0 auf einer Exponential-Website | eine nach dem Leeren neu geschriebene Cache-Datei wird bis zum Neustart von PHP in ihrer alten Form ausgeliefert | OPcache |
| Caches mit gerenderter Ausgabe leeren, bevor der neue Code läuft | die alte Ausgabe wird erneut zwischengespeichert, und die Änderung „hat nicht gewirkt“ | Caches leeren und vorwärmen |
| den falschen PHP-FPM-Master neu laden | die Website führt weiter den alten Code aus | Abstimmung von PHP-FPM |
| den Speicher von Velocity nach RSS beurteilen | der Pool sieht um ein Vielfaches größer aus, als er ist | Velocity-Worker und Pools |
| ein zwischenspeichernder Proxy, der Seiten mit einem Sitzungscookie speichert | Seiten angemeldeter Benutzer werden anderen Besuchern ausgeliefert | Varnish und Reverse Proxys |
ein Seiten-Cache von LiteSpeed mit CacheEnable public / statt der Bedingungen aus .htaccess_root | welche Seiten gespeichert werden, hängt von der Richtlinie des Servers ab, nicht von den Bedingungen für Sitzung und Adresse | Seiten-Caching mit LiteSpeed und OpenLiteSpeed |
| den statischen Cache der Geschwindigkeit wegen einschalten | jede Veröffentlichung erzeugt Seiten innerhalb der Anfrage des Redakteurs neu | Statischer Cache |
Verwandte Seiten
- Hosting-Anbieter: hier beginnen
- Webserver und Engines
- Langsame Website
- Caches
- Benchmark von Exponential
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.