Cache
Redis comme driver de cache.
Queue
Redis comme driver de queue.
Broadcasting
Communication temps réel via Pub/Sub.
Qu’est-ce que Redis
Redis est un store clé/valeur haute performance open source. Il gère différents types (chaînes, hashes, listes, sets, sorted sets…) — c’est un « data structure server ». Usages fréquents dans Laravel :Choix du client
Laravel supporte PhpRedis (extension) et Predis (package PHP).Sous Laravel 13, le client par défaut est PhpRedis. Recommandé en production.
Laravel Sail inclut PhpRedis.
Configuration
config/database.php
Variables d’environnement
TLS / SSL
Cluster
options.cluster = redis utilise le clustering natif Redis avec failover automatique — recommandé en production.
Pour le sharding côté client avec Predis, retirez options.cluster (sans failover, adapté à des données éphémères).
Configuration Predis
Installez le package et changez le client :Retry Predis
À partir de Predis 3.4.0,max_retries et retry (avec NoBackoff, EqualBackoff ou ExponentialBackoff) sont disponibles.
parameters.
Configuration PhpRedis
PhpRedis s’installe via PECL (déjà présent avec Laravel Sail). Options supplémentaires :name, persistent, persistent_id, prefix, read_timeout, retry_interval, max_retries, backoff_algorithm, backoff_base, backoff_cap, timeout, context.
Retry et backoff
Algorithmes supportés :default, decorrelated_jitter, equal_jitter, exponential, uniform, constant.
Socket Unix
Sur le même serveur, économisez l’overhead TCP.Sérialisation et compression
Compressions :
Utiliser Redis
Façade Redis
Exécutez toute commande Redis via la façade. Elle transmet magiquement les appels.command :
Plusieurs connexions
Basculez avecconnection().
Transactions
transaction() encapsule MULTI/EXEC de Redis. Toutes les commandes s’exécutent de manière atomique.
Scripts Lua
eval() exécute atomiquement un script Lua qui peut lire et écrire.
KEYS[1], KEYS[2] = clés ; ARGV[1]… = args.
Pipeline
Envoyez beaucoup de commandes en une fois pour économiser les allers-retours réseau.Pub / Sub
Utilisezpublish / subscribe pour communiquer par canaux.
Souscripteur
Long-running : dans une commande Artisan.Publisher
Depuis une autre requête / process :Souscription avec wildcard
psubscribe() supporte les patterns.
Récapitulatif
Choix du client
Choix du client
- Production : PhpRedis (extension PECL, haute performance)
- Dev / environnement contraint : Predis (Composer)
- Laravel Sail : PhpRedis inclus
Configuration
Configuration
- Connexions multiples via
config/database.php(par exempledefault/cache) clusterspour un cluster- En production, envisagez TLS et authentification
Opérations
Opérations