Maison  >  Article  >  développement back-end  >  Le cache Golang est-il mondial ?

Le cache Golang est-il mondial ?

(*-*)浩
(*-*)浩original
2019-12-13 11:37:513765parcourir

Le cache Golang est-il mondial ?

go-cache est un outil de mise en cache haute vitesse basé sur la mémoire qui stocke le format k-v. Il convient aux applications exécutées sur une seule machine, peut stocker des valeurs de tout type de données et peut être utilisé en toute sécurité par plusieurs goroutines.                                                                                                                                                                                           (Apprendre : aller

Bien que go-cache ne soit pas destiné à être utilisé comme magasin de données persistant, l'intégralité des données du cache peut être enregistrée dans un fichier (ou n'importe quel io.Reader/Writer ), et peut charger rapidement la source de données spécifiée à partir de celle-ci et restaurer rapidement l'état.

Démo

package main

import (
        "log"
        "time"

        "github.com/patrickmn/go-cache"
)


func main(){

        c := cache.New(30*time.Second, 10*time.Second)


        c.Set("Title", "Spring Festival", cache.DefaultExpiration)


        value, found := c.Get("Title")
        if found {
                log.Println("found:", value)
        } else {
                log.Println("not found")
        }


        time.Sleep(60*time.Second)
        log.Println("sleep 60s...")
        value, found = c.Get("Title")
        if found {
                log.Println("found:", value)
        } else {
                log.Println("not found")
        }

}

sortie

2019/02/05 17:49:32 found: Spring Festival
2019/02/05 17:50:32 sleep 60s…
2019/02/05 17:50:32 not found

Tout d'abord, créez un nouveau cache avec le délai d'expiration de la clé de 30 secondes et effacez. clés expirées dans le cache toutes les 10 secondes.

La suppression régulière des clés expirées dans le cache est mise en œuvre via une goroutine résidente.

Ensuite, définissez une clé/valeur et son heure d'expiration. Le délai d'expiration utilise le délai d'expiration par défaut, qui est de 30 s.

Récupérez cette clé, vous pouvez voir que cette clé existe dans le cache en ce moment.

Veillez pendant 60 s pour expirer la clé que vous venez de définir.

Récupérez à nouveau la clé. À ce moment, la clé a expiré, a été effacée et n'est plus dans le cache

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!

Déclaration:
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