Introduction
Bienvenue dans notre guide complet sur la connexion de Redis avec une application Go. Redis, une base de données clé-valeur en mémoire, offre une latence incroyablement basse, en faisant un choix idéal pour le caching et en tant que courtier de messages. Sa prise en charge de diverses structures de données le rend polyvalent et hautement scalable. Ce tutoriel se concentrera sur la configuration initiale et les opérations de base avec Redis, avec un accent particulier sur l'intégration avec une application Go.
Configuration de Redis
Installation sur Linux
Pour les utilisateurs Linux, suivez ces étapes :
$ sudo apt-get update
$ sudo apt-get install curl -y
$ curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
$ echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
$ sudo apt-get update
$ sudo apt-get install redis
$ sudo service redis start
Installation sur macOS
Utilisateurs macOS, installez Redis avec Brew :
$ brew update
$ brew install redis
$ brew services start redis
Installation sur Windows
Pour Windows, utilisez Debian via WSL ou Docker.
Test de la Connexion Redis
Avant de configurer votre client Go, assurez-vous que le serveur Redis fonctionne :
$ redis-cli ping
Si le serveur est opérationnel, la réponse devrait être "PONG".
Mise en Place du Client Go
Installation du Client Redis Go
Dans le répertoire de travail, initialisez les modules Go :
$ go mod init main
Ajoutez l'importation dans le fichier main.go :
package main
import (
"context"
"github.com/go-redis/redis/v9"
)
func main() {}
Exécutez ensuite la commande pour installer le package golang-redis :
$ go get github.com/go-redis/redis/v8
Connexion à Redis depuis Go
Dans le fichier main.go, ajoutez le code suivant pour établir la connexion :
package main
import (
"context"
"fmt"
"log"
"github.com/go-redis/redis/v9"
)
var ctx = context.Background()
func RedisClient() {
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "",
DB: 15,
})
pong, err := rdb.Ping(ctx).Result()
if err != nil {
log.Fatal(err)
}
fmt.Println(pong)
}
func main() {
RedisClient()
}
Ajout d'une Paire Clé-Valeur
Une fois connecté, ajoutez une paire clé-valeur avec le code suivant :
err = rdb.Set(ctx, "username", "geekbits", 0).Err()
if err != nil {
log.Panic(err)
}
Récupération de Valeurs
Utilisez la fonction Get() pour récupérer une valeur :
value, err := rdb.Get(ctx, "username").Result()
if err != nil {
log.Panic(err)
}
fmt.Println(value)
Conclusion
Félicitations, vous avez réussi à connecter Redis avec votre application Go ! Ce guide couvre les concepts fondamentaux et offre une base solide pour travailler avec Redis en Go. Restez à l'écoute pour la partie 2, où nous explorerons le stockage d'autres types de données et les opérations avancées. Merci de nous lire et à bientôt !