From 209b44d824d40b3138212729559f3e3b37802e7c Mon Sep 17 00:00:00 2001 From: Pavel Tisnovsky Date: Mon, 29 Jun 2020 09:17:33 +0200 Subject: [PATCH] Example #6: check for working with Redis --- .../redis/06_more_checks/06_more_checks.go | 43 +++++++++++++++++++ lesson7/redis/06_more_checks/go.mod | 5 +++ 2 files changed, 48 insertions(+) create mode 100644 lesson7/redis/06_more_checks/06_more_checks.go create mode 100644 lesson7/redis/06_more_checks/go.mod diff --git a/lesson7/redis/06_more_checks/06_more_checks.go b/lesson7/redis/06_more_checks/06_more_checks.go new file mode 100644 index 0000000..3df096c --- /dev/null +++ b/lesson7/redis/06_more_checks/06_more_checks.go @@ -0,0 +1,43 @@ +package main + +import ( + "fmt" + + "github.com/go-redis/redis/v8" +) + +// adresa určující službu Redisu, která se má použít +const redisAddress = "localhost:6379" + +func main() { + // vytvoření nového klienta s předáním konfiguračních parametrů + client := redis.NewClient(&redis.Options{ + Addr: redisAddress, + Password: "", // no password set + DB: 0, // use default DB + }) + + // neměli bychom zapomenout na ukončení práce s klientem + defer func() { + err := client.Close() + if err != nil { + panic(err) + } + }() + + // získáme kontext + context := client.Context() + + // přečtení hodnoty z databáze Redisu + address, err := client.Get(context, "Seriál o jazyku Go").Result() + + // vyhodnocení předchozí operace + switch { + case err == redis.Nil: + fmt.Println("no value found") + case err != nil: + panic(err) + default: + fmt.Println("Adresa:", address) + } +} diff --git a/lesson7/redis/06_more_checks/go.mod b/lesson7/redis/06_more_checks/go.mod new file mode 100644 index 0000000..d95c829 --- /dev/null +++ b/lesson7/redis/06_more_checks/go.mod @@ -0,0 +1,5 @@ +module redis1 + +go 1.13 + +require github.com/go-redis/redis/v8 v8.0.0-beta.5