Maison > développement back-end > Golang > Comment lire les données du cache Golang ?

Comment lire les données du cache Golang ?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2024-06-02 15:34:02
original
892 Les gens l'ont consulté

La lecture des données du cache Golang est divisée en quatre étapes suivantes : Importer le package de cache. Établissez une connexion Redis. Définir la valeur de la clé de cache. Récupérez les données du cache. Ce didacticiel fournit un exemple pratique de la manière de récupérer le nom et l'âge d'un utilisateur à partir du cache. Cette technique permet d'améliorer les performances des applications en réduisant les accès aux bases de données en mettant en cache les données fréquemment utilisées.

如何从 Golang 缓存中读取数据?

Comment lire les données du cache Golang ?

Le mécanisme de mise en cache de Golang offre des options pour stocker et récupérer efficacement les données. Ce tutoriel vous expliquera comment lire les données du cache Golang et vous fournira un cas pratique pour le démontrer en action.

Étape 1 : Importer le package de cache

import (
    "context"
    "fmt"
    "log"
    "time"

    "github.com/go-redis/redis/v8"
)
Copier après la connexion

Étape 2 : Établir une connexion Redis

func connectRedis() (*redis.Client, error) {
    client := redis.NewClient(&redis.Options{
        Addr:     "localhost:6379", // Redis 服务器地址
        Password: "",              // 密码(如果需要)
        DB:       0,               // 数据库索引
    })

    _, err := client.Ping(context.Background()).Result()
    if err != nil {
        return nil, err
    }

    return client, nil
}
Copier après la connexion

Étape 3 : Définir la valeur de la clé de cache

Supposons que nous stockions le nom de l'utilisateur nommé "user1 " .

func setCache(client *redis.Client) {
    // 设置键 "user1" 的值为 "Alice"
    err := client.Set(context.Background(), "user1", "Alice", 0).Err()
    if err != nil {
        log.Fatal(err)
    }

    // 设置键 "user1_age" 的值为 25
    err = client.Set(context.Background(), "user1_age", 25, 0).Err()
    if err != nil {
        log.Fatal(err)
    }
}
Copier après la connexion

Étape 4 : Récupérer les données du cache

func getCache(client *redis.Client) {
    // 获取键 "user1" 的值
    val, err := client.Get(context.Background(), "user1").Result()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("User Name: %s\n", val)

    // 获取键 "user1_age" 的值并转换为 int
    age, err := client.Get(context.Background(), "user1_age").Int()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("User Age: %d\n", age)
}
Copier après la connexion

Exemple pratique

Dans l'exemple suivant, nous récupérons le nom d'utilisateur et l'âge du cache :

func main() {
    client, err := connectRedis()
    if err != nil {
        log.Fatal(err)
    }
    defer client.Close()

    setCache(client)
    getCache(client)
}
Copier après la connexion

Lorsque vous exécutez cet exemple, vous verrez Le résultat suivant :

User Name: Alice
User Age: 25
Copier après la connexion

Les étapes ci-dessus montrent comment lire les données du cache Golang. Vous pouvez utiliser cette technique pour améliorer les performances des applications en mettant en cache les données fréquemment utilisées afin de réduire les accès aux bases de données.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal