Middle
Qu'est-ce que la mise en cache et à quoi sert-elle?
sobes.tech IA
Réponse de l'IA
La mise en cache est le processus de sauvegarde des résultats d'opérations coûteuses (par exemple, calculs, requêtes à une base de données ou à des services externes) dans un accès rapide, afin que lors d'une requête ultérieure, on puisse utiliser les données déjà prêtes plutôt que de répéter l'opération.
À quoi sert la mise en cache :
- Elle accélère le fonctionnement de l'application en réduisant le temps de réponse.
- Elle réduit la charge sur les ressources (BD, réseau, CPU).
- Elle améliore la scalabilité du système.
En Go, la mise en cache est souvent réalisée à l'aide de structures de données intégrées (map) ou de bibliothèques spécialisées, par exemple pour le cache en mémoire. Exemple d'un cache simple en Go :
package main
import (
"fmt"
"sync"
"time"
)
type Cache struct {
mu sync.Mutex
store map[string]string
}
func NewCache() *Cache {
return &Cache{store: make(map[string]string)}
}
func (c *Cache) Get(key string) (string, bool) {
c.mu.Lock()
defer c.mu.Unlock()
val, ok := c.store[key]
return val, ok
}
func (c *Cache) Set(key, value string) {
c.mu.Lock()
defer c.mu.Unlock()
c.store[key] = value
}
func main() {
cache := NewCache()
cache.Set("time", time.Now().String())
if val, ok := cache.Get("time"); ok {
fmt.Println("Valeur en cache :", val)
}
}