Anwendungs-Cache und Redis
Diese Seite richtet sich an Entwickler und Administratoren, die die Caches hinter einer DXP-Website abstimmen. Drei Caches werden leicht verwechselt; diese Seite trennt sie.
Inhalt
Drei Caches
| Cache | Enthält | Wo |
|---|---|---|
| Symfony-Cache | den kompilierten Container, Routen, Twig-Templates | var/cache/<env>/ |
| Cache-Pool für Inhalte | Repository-Daten (Inhalte, Platzierungen, Typen), tagfähig | der Pool, den CACHE_POOL nennt |
| HTTP-Cache | ganze Antworten | der Symfony-Proxy oder Varnish (HTTP-Cache) |
Der Cache-Pool für Inhalte
CACHE_POOL nennt den Pool; der Standard ist cache.tagaware.filesystem. Ein installiertes Projekt hält die
vordefinierten Pools in config/packages/cache_pool/: cache.tagaware.filesystem.yaml, cache.redis.yaml und
cache.memcached.yaml. Jeder Siteaccess verwendet den Pool, der in ibexa.system.default.cache_service_name gesetzt ist
('%cache_pool%'). Eine Installation mit mehreren Repositorys braucht je Repository einen anderen Pool.
Auf Redis umstellen
CACHE_POOL=cache.redis
CACHE_DSN=redis://localhost:6379Leeren Sie dann den Symfony-Cache. Redis 6 oder neuer ist das Minimum der Anleitung; sie empfiehlt Redis für Caching
und Sessions in der Produktion. Redis braucht die PHP-Erweiterung redis.
Jeden Cache leeren
php bin/console cache:clear --env=prod # Symfony cache
php bin/console cache:warmup --env=prod # build it again before traffic arrives
php bin/console cache:pool:clear cache.tagaware.filesystem # the content pool (or cache.redis)
php bin/console fos:httpcache:invalidate:path / --all # the HTTP cacheNur in der Entwicklung entfernt die "nukleare Option" der Anleitung var/cache/dev und var/cache/prod und wärmt
erneut vor. Löschen Sie auf einem Produktionsserver unter Verkehr keine Cache-Verzeichnisse; verwenden Sie die Befehle.
Sessions
Sessions liegen standardmäßig als Dateien unter var/sessions/<env> (SESSION_HANDLER_ID=session.handler.native_file,
SESSION_SAVE_PATH). Bei mehreren Webservern müssen Sessions geteilt werden; Redis ist eine übliche Wahl. Ändern Sie den
Handler in .env.local und testen Sie die Anmeldung auf jedem Server.
Verwandte Seiten
- HTTP-Cache und Varnish
- Befehle für den Alltag
- Fehlersuche
- 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.