Sobes.tech
Senior

Parlami di Redis

sobes.tech AI

Risposta dell'AI

Redis è un archivio di dati in memoria ad alte prestazioni che supporta diverse strutture di dati: stringhe, liste, set, hash, set ordinati, ecc. Viene utilizzato come cache, broker di messaggi, database a bassa latenza.

In Go, per lavorare con Redis, si utilizza spesso la libreria go-redis.

Esempio di utilizzo semplice:

package main

import (
    "context"
    "fmt"
    "github.com/go-redis/redis/v8"
)

func main() {
    ctx := context.Background()
    rdb := redis.NewClient(&redis.Options{
        Addr: "localhost:6379",
    })

    err := rdb.Set(ctx, "key", "value", 0).Err()
    if err != nil {
        panic(err)
    }

    val, err := rdb.Get(ctx, "key").Result()
    if err != nil {
        panic(err)
    }

    fmt.Println("key", val)
}

Redis supporta operazioni atomiche, transazioni, script Lua, che consentono di risolvere efficacemente compiti di sincronizzazione e caching.