Wie kann ich den cache in laravel über Kommandozeile?
Ich bin mit Redis
cache Abfragen/Routen in Laravel 5.2.
Habe ich 3-Umgebungen auf dem gleichen web-server, den ich.e "Produktion", "Inszenierung" und "Entwicklung".
Für jede Umgebung ich unterschiedliche cache - prefix
Wert, mir zu erlauben, link den cache zu verschiedenen Umwelt.
In der config/cache.php
Datei, die ich verändert die Linie
'prefix' => 'laravel',
Zu
'prefix' => ENV('CACHE_PREFIX', 'laravel'),
Dann in meinem .env
Datei, ich habe den Präfix für jede Umgebung wie dieser
Für Dev
CACHE_PREFIX="LaravelDev"
Für Die Inszenierung
CACHE_PREFIX="LaravelStaging"
Für Die Produktion
CACHE_PREFIX="LaravelProduction"
Ich weiß, ich kann den cache löschen von der Kommandozeile aus wie diese
php artisan cache:clear
Aber der obige code löschen Sie den cache für alle meine Umgebungen.
Ich will nur den cache zu löschen für "LaravelDev" nur und allein verlassen "LaravelStaging" und "LaravelProduction"
Wie kann ich den cache für eine bestimmte Umgebung?
Du musst angemeldet sein, um einen Kommentar abzugeben.
cache:clear
Befehl entfernen Sie alle cache Zusammenhang mit der Verbindung zur Datenbank.Wenn Sie möchten, verwenden Sie die gleichen
Redis
- server mit mehreren Instanzen, die Sie verwenden können, eine andereRedis
Datenbank für jede Instanz.In der
.env
Datei, die Sie hinzufügen können Sie die folgendenFür Ihre Produktionsumgebung
Für Ihre Staging-Umgebung
Für Ihre Entwicklungsumgebung
Dann in
config\database.php
imRedis
Abschnitt ändern Sie diese Zeile'database' => 0,
zu
'database' => env('REDIS_DATABASE', 0),
Jetzt können Sie löschen den cache für alle Ihre Umgebungen mit dem folgenden Befehl
Was die
cache:clear
Handwerker-Befehl keine Anrufeflush
Funktion auf den aktuellen connector. Als caching-engines variiert mit der Funktionalität, die ich glaube nicht, dass es möglich ist, verfallen Schlüssel selektiv zu halten cache-API-universal. Suchmaschinen wie Redis bietet eine solche Funktionalität, aber memcached zum Beispiel nicht.Wenn Sie mit Redis, die Sie können ändern, Standard-Anschluss für die Verwendung von 'SCAN /DEL" - Befehle für
flush()
Methode. Noch ist dies nicht sehr effektiv.Falls Ihre Anwendung den cache richtig Spülen sollte es nicht verursachen keine Probleme, da der cache sich neu. Man sollte nie erwarten, dass einige Daten in den cache, wie es vielleicht ablaufen sowieso.