Redis®*: Validazioni tecniche
Questa documentazione fa parte della guida Classificare gli utenti in tempo reale. Consulta la guida completa qui: Scopri come classificare 2 milioni di utenti per punteggio in tempo reale utilizzando Redis.
👋 Benvenuti nella documentazione di Stackhero!
Stackhero offre una soluzione Redis cloud pronta all'uso che fornisce numerosi vantaggi, tra cui:
- Interfaccia web
Redis Commanderinclusa.- Dimensione e trasferimenti di messaggi illimitati.
- Aggiornamenti senza sforzo con un solo clic.
- Prestazioni ottimali e sicurezza robusta grazie a una VM privata e dedicata.
Risparmia tempo e semplifica la tua vita: bastano solo 5 minuti per provare la soluzione di hosting Redis cloud di Stackhero!
I sorted sets combinano una chiave e un punteggio. Nel nostro caso, la chiave è l'ID utente e il punteggio rappresenta i punti dell'utente.
Abbiamo iniziato lanciando un servizio Redis su Stackhero. Il servizio è attivo in soli 2 minuti con l'ultima versione stabile, offre fatturazione oraria e dispone di Redis Commander, una pratica interfaccia web. Abbiamo validato il concetto utilizzando questa interfaccia.
Abbiamo aggiunto tre utenti con ID e punteggi di esempio come mostrato di seguito:
| Nome utente | Punteggio | | - | - | | userId1 | 11 | | userId2 | 54 | | userId3 | 24 |
Questi utenti sono stati aggiunti a un sorted set chiamato usersScores utilizzando i seguenti comandi Redis:
ZADD usersScores 11 "userId1"
ZADD usersScores 54 "userId2"
ZADD usersScores 24 "userId3"
Redis Commander, l'interfaccia web fornita su Stackhero con le istanze Redis
Successivamente, abbiamo recuperato il punteggio di userId1:
ZSCORE usersScores "userId1"
> 11
Questo ha confermato che il punteggio per userId1 era effettivamente 11. Dopo di ciò, abbiamo verificato il rango di userId1:
ZREVRANK usersScores "userId1"
> 2
Ricordate, la classifica inizia da 0. Questo significa che le classifiche sono le seguenti:
| Nome utente | Punteggio | Rango | | - | - | - | | userId1 | 11 | 2 | | userId2 | 54 | 0 | | userId3 | 24 | 1 |
Il comando ZREVRANK ha restituito 2, che è esattamente ciò che ci aspettavamo per userId1.
È possibile anche recuperare le voci migliori. Ad esempio, per recuperare i primi 2 utenti (dal rango 0 al rango 1) eseguite:
ZREVRANGE usersScores 0 1 WITHSCORES
> 1) userId2
> 2) 54
> 3) userId3
> 4) 24
Per ottenere i primi 100 utenti basta eseguire:
ZREVRANGE usersScores 0 99 WITHSCORES
Questo approccio è efficiente e perfettamente adatto alla classificazione in tempo reale ad alte prestazioni.