Redis (REmote DIctionary Server) è un database NoSQL in-memory ad alte prestazioni che funziona come un sistema di archiviazione basato su chiave-valore. È noto per la sua velocità e flessibilità, e può essere utilizzato come database, cache, e message broker. Redis supporta strutture di dati come stringhe, hash, liste, set e sorted set, offrendo anche funzionalità avanzate come la persistenza, la replica, il clustering e la gestione automatica dei failover.
Redis è stato creato nel 2009 da Salvatore Sanfilippo, sviluppatore italiano noto anche con il nickname “antirez”. L’idea nacque mentre lavorava su un progetto di analisi delle attività degli utenti per un’azienda italiana, dove aveva bisogno di un database estremamente veloce e capace di gestire grandi volumi di dati in tempo reale. Inizialmente sviluppato come una semplice cache, Redis è stato rapidamente apprezzato dalla comunità open-source per la sua velocità e versatilità, diventando uno dei database NoSQL più popolari al mondo. Nel 2015, Sanfilippo ha donato il progetto a Redis Labs (oggi Redis Inc.), che ha continuato a svilupparlo e a supportarlo, mantenendo Redis open-source e aggiungendo nuove funzionalità per adattarsi alle crescenti esigenze del mercato e degli sviluppatori.
A cosa serve Redis?
- Caching: Grazie alla velocità dell’accesso in memoria, Redis è ideale per il caching, riducendo i tempi di risposta e migliorando le prestazioni delle applicazioni.
- Session Storage: Redis viene spesso utilizzato per archiviare sessioni utente in applicazioni web, garantendo velocità e scalabilità.
- Queueing (code di messaggi): Redis è adatto come message broker per la gestione di code di messaggi e flussi di dati.
- Pub/Sub: Redis supporta un sistema di pubblicazione e sottoscrizione per lo streaming di dati in tempo reale, utile per notifiche, aggiornamenti, chat, e altro.
- Analytics e conteggio: Ideale per contare eventi in tempo reale, monitoraggio di statistiche o accumulo di dati, ad esempio per contatori di visualizzazioni o download.
Installazione di Redis su Linux (Ubuntu)
Redis è disponibile nella repo ufficiale di Ubuntu, quindi per installarlo è sufficiente fare il solito:
sudo apt update
sudo apt install redis-server
Dopo l’installazione, verifica se Redis è attivo:
sudo systemctl status redis
Poi apri il file di configurazione:
sudo nano /etc/redis/redis.conf
Modifica il parametro supervised no in supervised systemd, salva e riavvia Redis:
sudo systemctl restart redis
Installazione su macOS (con Homebrew)
Anche su macOS l’installazione avviene in maniera piuttosto semplice e veloce:
brew install redis
Per avviare Redis automaticamente al login:
brew services start redis
Installazione su Windows
Su Windows, Redis è disponibile come servizio WSL (Windows Subsystem for Linux) o come pacchetto ufficiale Redis per Windows.

Come utilizzare Redis
Una volta installato, puoi iniziare a usare Redis tramite il comando Redis CLI (Command Line Interface), oppure da una qualsiasi applicazione client - ce ne sono innumerevoli realizzate in vari linguaggi come Python, Node.js, o Java.
Per accedere a Redis da CLI basta lanciare il comando:
redis-cli
Una volta dentro, puoi eseguire questi comandi principali:
- Set e Get: Per salvare e recuperare valori In una chiave:
set chiave "valore"
get chiave
- List (liste):
rpush lista "valore1" "valore2"
lrange lista 0 -1
- Hash (strutture hash):
hset hash chiave1 "valore1" chiave2 "valore2"
hgetall hash
- Pub/Sub (pubblicazione/sottoscrizione):
SUBSCRIBE canale
PUBLISH canale "messaggio"
- Connessione con un’applicazione:
Redis è supportato da molte librerie per vari linguaggi. Esempio in Python (richiede redis-py):
import redis
client = redis.StrictRedis(host='localhost', port=6379, db=0)
client.set('chiave', 'valore')
print(client.get('chiave').decode('utf-8'))
Ora continua tu...
Redis è uno strumento potente e versatile per migliorare le prestazioni delle applicazioni grazie alla sua capacità di archiviazione in-memory e alla flessibilità delle sue strutture dati. Sia che tu voglia usarlo per caching, session storage, o gestione di code, Redis è una soluzione veloce e scalabile.
In rete trovi ovviamente un sacco di materiale interessante per muovere i prossimi passi, io ti consiglio questa pagina, che è un classico assoluto per i dev italici:
/https://www.html.it/app/uploads/2014/12/copertina.png)
Se invece hai bisogno di assistenza o formazione in ambito Redis, puoi sempre pensare di contattarmi 🙂