0Pricing
PHP Academy · Lezione

Redis come backend di cache per PHP

Connettere PHP a Redis e mettere in cache i risultati delle query e i dati calcolati.

Redis come backend di cache per PHP è una lezione PHP Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento PHP Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso PHP Academy include 4 lezioni in totale.

Che cos'è Redis?

Redis è un server di strutture dati in memoria. È il backend di caching più utilizzato per le applicazioni PHP grazie alla sua velocità, ai suoi numerosi tipi di dati e al supporto integrato per il TTL.

Installazione dell'estensione Redis per PHP

Installi l'estensione C phpredis (la più veloce) oppure la libreria predis interamente in PHP.

# Predis via Composer:
$ composer require predis/predis

# Or install phpredis extension:
$ pecl install redis

Connessione a Redis (Predis)

Crei un client Predis e si connetta al server Redis.

<?php
require "vendor/autoload.php";

$redis = new \Predis\Client([
    "scheme" => "tcp",
    "host"   => "127.0.0.1",
    "port"   => 6379,
]);

Operazioni di base sulla cache

Imposti, recuperi ed elimini le voci della cache.

<?php
// Set with TTL (seconds):
$redis->setex("user:42", 300, json_encode($user));

// Get:
$cached = $redis->get("user:42");
$user   = $cached ? json_decode($cached, true) : fetchFromDB(42);

// Delete:
$redis->del("user:42");

Pattern di cache con Redis

Implementi il pattern cache-aside in PHP:

<?php
function getUser(int $id): array {
    global $redis;
    $key    = "user:$id";
    $cached = $redis->get($key);
    if ($cached !== null) return json_decode($cached, true);
    $user = fetchUserFromDB($id);
    $redis->setex($key, 3600, json_encode($user));
    return $user;
}

Integrazione di Redis con Laravel

Configuri .env e utilizzi la facade Cache: non è necessario alcun client Predis manuale.

# .env
CACHE_DRIVER=redis
REDIS_HOST=127.0.0.1

// Usage:
Cache::put("key", $value, 600);
$value = Cache::get("key");

Incremento/decremento atomico

Utilizzi le operazioni atomiche di Redis per i contatori (utilizzo delle API, limitazione della frequenza).

<?php
$hits = $redis->incr("page:home:hits");
$redis->expire("page:home:hits", 86400); // reset daily

Liste Redis per le code

Le liste Redis sono il backend del driver per le code Redis di Laravel. I job vengono inseriti ed estratti dalle liste in modo atomico.

Pub/Sub di Redis

Redis supporta la messaggistica publish/subscribe per le funzionalità in tempo reale, ad esempio la trasmissione di eventi ai client WebSocket connessi.

Cluster Redis

Per garantire alta disponibilità e scalabilità orizzontale, Redis Cluster distribuisce i dati tra più nodi. Laravel supporta la configurazione del cluster direttamente.

Monitoraggio di Redis

Utilizzi redis-cli monitor per osservare i comandi in tempo reale oppure Laravel Horizon per il monitoraggio delle code. Tenga sotto controllo l'utilizzo della memoria con redis-cli info memory.

Riepilogo

Redis è il backend di cache preferito per PHP: è veloce, persistente (facoltativamente) e offre numerose strutture dati. In Laravel, imposti CACHE_DRIVER=redis e utilizzi la facade Cache. Utilizzi direttamente Predis o phpredis per un controllo più dettagliato.

Verifica rapida

Quale comando Redis imposta una chiave con una scadenza espressa in secondi?

Domande Frequenti

La lezione «Redis come backend di cache per PHP» è gratuita?

Sì — il testo completo di «Redis come backend di cache per PHP» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso PHP Academy, passa a CoddyKit PRO. Il corso PHP Academy include 4 lezioni in totale.

Cosa imparerò in «Redis come backend di cache per PHP»?

Connettere PHP a Redis e mettere in cache i risultati delle query e i dati calcolati. Eserciti PHP Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare PHP Academy?

Non è richiesta alcuna esperienza precedente. PHP Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Redis come backend di cache per PHP»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione PHP Academy?

Sì. Ogni lezione PHP Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Perché il caching è importante in PHP
  2. Redis come backend di cache per PHP
  3. Memcached per il caching di sessioni e oggetti
  4. Pattern di invalidazione della cache
← Torna a PHP Academy