Connecter Redis avec Go : Guide Complet pour Débutants (2023)

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 !

Top Articles
Latest Posts
Article information

Author: Rev. Leonie Wyman

Last Updated: 07/08/2023

Views: 5997

Rating: 4.9 / 5 (59 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Rev. Leonie Wyman

Birthday: 1993-07-01

Address: Suite 763 6272 Lang Bypass, New Xochitlport, VT 72704-3308

Phone: +22014484519944

Job: Banking Officer

Hobby: Sailing, Gaming, Basketball, Calligraphy, Mycology, Astronomy, Juggling

Introduction: My name is Rev. Leonie Wyman, I am a colorful, tasty, splendid, fair, witty, gorgeous, splendid person who loves writing and wants to share my knowledge and understanding with you.