1. Home
  2. Værktøjer til udviklere
  3. Hvordan får jeg Redis til at køre via socket til Laravel?

Hvordan får jeg Redis til at køre via socket til Laravel?

Denne vejledning er beregnet til avancerede brugere.

Disse instruktioner er skrevet til Laravel 9. De fungerer muligvis ikke til ældre versioner af Laravel.

Vi tilbyder Redis på alle vores webhostingkonti og Agency-tjenester. Dette gøres via socket i modsætning til via port, som bruges som standard i Laravel. For at få det til at fungere med f.eks. køarbejdere skal du foretage nogle indstillinger i dit Laravel-projekt.

Se følgende vejledning for at opsætte en Laravel-worker.

  1. Start med at tilføje, at Predis Composer-pakken er påkrævet i projektet. Så kør følgende kommando i roden af dit projekt:
    composer require predis/predis
    Det skyldes, at det ikke er muligt at bruge PECL-varianten af phpredis til at tilgå Redis via socket.
  2. Under Redis-indstillingerne i projektet config/database.php skal du tilføje linjer til scheme og path, så det ser sådan ud:
'default' => [
  'url' => env('REDIS_URL'),
  'host' => env('REDIS_HOST', '127.0.0.1'),
  'password' => env('REDIS_PASSWORD', null),
  'port' => env('REDIS_PORT', '6379'),
  'database' => env('REDIS_DB', '0'),
  'scheme' => env('REDIS_SCHEME', 'tcp'),
  'path' => env('REDIS_PATH', ''),
  ],
'cache' => [
  'url' => env('REDIS_URL'),
  'host' => env('REDIS_HOST', '127.0.0.1'),
  'password' => env('REDIS_PASSWORD', null),
  'port' => env('REDIS_PORT', '6379'),
  'database' => env('REDIS_CACHE_DB', '1'),
  'scheme' => env('REDIS_SCHEME', 'tcp'),
  'path' => env('REDIS_PATH', ''),
  ],
  1. I .env-filen til dit projekt skal du erstatte alle linjer, der starter med REDIS_*, med følgende:
REDIS_CLIENT=predis
REDIS_SCHEME=unix
REDIS_PATH=/tmp/redis
REDIS_PASSWORD=null
REDIS_PORT=0
  1. Hvis du vil bruge Redis til at håndtere køen, skal du opdatere QUEUE_CONNECTION til redis i henhold til standardindstillingerne for Redis i Laravel. Du kan bruge redis både som CACHE_DRIVER og som SESSION_DRIVER.
  2. Ryd cachen for alle indstillinger med php artisan config:cache for at få ovenstående ændringer anvendt.

Hvis der er en kø, vil den blive håndteret via Redis.

Was this article helpful?

Related Articles