From a322c51c7c06ca61fa61c6e1b743fb305b6d09e3 Mon Sep 17 00:00:00 2001 From: junleea <354425203@qq.com> Date: Sat, 8 Jun 2024 15:23:43 +0800 Subject: [PATCH] =?UTF-8?q?redis=E8=AE=BE=E7=BD=AE=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E8=BE=93=E5=87=BA=E4=B8=8D=E6=9A=82=E5=81=9C?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- worker/redis.go | 37 +++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/worker/redis.go b/worker/redis.go index 70de3d8..75ca6c2 100644 --- a/worker/redis.go +++ b/worker/redis.go @@ -2,7 +2,6 @@ package worker import ( "fmt" - "log" "strconv" "time" ) @@ -25,14 +24,14 @@ func InitRedis() { // 验证 Redis 客户端是否可以正常工作 _, err := redisClient.Ping(ctx).Result() if err != nil { - log.Fatalf("Error connecting to Redis: %v", err) + fmt.Println("Error connecting to Redis: %v", err) } } func CloseRedis() { // 关闭 Redis 客户端 if err := redisClient.Close(); err != nil { - log.Fatalf("Error closing Redis client: %v", err) + fmt.Println("Error closing Redis client: %v", err) } } @@ -40,7 +39,8 @@ func isContainKey(key string) bool { ctx := context.Background() val, err := redisClient.Exists(ctx, key).Result() // 检查键是否存在, 如果存在则返回 1, 否则返回 0 if err != nil { - log.Fatalf("Error getting key: %v", err) + fmt.Println("Error getting key: %v", err) + return false } if val == 0 { return false @@ -54,14 +54,16 @@ func SetRedis(key string, value string) bool { // 设置键值对, 0 表示不设置过期时间, 如果需要设置过期时间, 可以设置为 time.Second * 10 等 err := redisClient.Set(ctx, key, value, time.Second*100).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) return false } return true } // 设置hash -func SetHash(key string, id int, name, email string) { +func SetHash(key string, id int, name, email string) bool { + //捕获错误,如果错误返回 + ctx := context.Background() // 创建一个上下文 fields := map[string]interface{}{ "id": strconv.Itoa(id), @@ -72,12 +74,15 @@ func SetHash(key string, id int, name, email string) { // 设置哈希表的字段值, 0 表示不设置过期时间, 如果需要设置过期时间, 可以设置为 time.Second * 10 等 err := redisClient.HSet(ctx, key, fields).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) + return false } err = redisClient.Expire(ctx, key, time.Hour*10).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) + return false } + return true } // 获取hash @@ -85,7 +90,7 @@ func GetHash(key string) RUser { ctx := context.Background() val, err := redisClient.HGetAll(ctx, key).Result() // 从 Redis 读取哈希表, 如果键不存在则返回空字符串, 如果出现错误则返回错误 if err != nil { - log.Fatalf("Error getting key: %v", err) + fmt.Println("Error getting key: %v", err) } id, _ := strconv.Atoi(val["id"]) name, _ := val["name"] @@ -99,7 +104,7 @@ func SetRedisWithExpire(key string, value string, expire time.Duration) bool { / // 设置键值对, 0 表示不设置过期时间, 如果需要设置过期时间, 可以设置为 time.Second * 10 等 err := redisClient.Set(ctx, key, value, expire).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) return false } return true @@ -120,7 +125,7 @@ func popRedisList(key string) string { ctx := context.Background() val, err := redisClient.LPop(ctx, key).Result() // 从 Redis 读取键值, 如果键不存在则返回空字符串, 如果出现错误则返回错误 if err != nil { - log.Fatalf("Error reading from Redis: %v", err) + fmt.Println("Error reading from Redis: %v", err) } return val } @@ -130,7 +135,7 @@ func pushRedisList(key string, value string) { ctx := context.Background() err := redisClient.RPush(ctx, key, value).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) } } @@ -139,7 +144,7 @@ func delRedis(key string) { ctx := context.Background() err := redisClient.Del(ctx, key).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) } } @@ -155,7 +160,7 @@ func (u *RUser) toJSONString() string { // 将User对象编码为JSON字符串 userJSON, err := json.Marshal(u) if err != nil { - log.Fatalf("Failed to marshal user: %v", err) + fmt.Println("Failed to marshal user: %v", err) } return string(userJSON) } @@ -165,7 +170,7 @@ func hSetRedis(key string, field string, value string) { ctx := context.Background() err := redisClient.HSet(ctx, key, field, value).Err() if err != nil { - log.Fatalf("Error setting key: %v", err) + fmt.Println("Error setting key: %v", err) } } @@ -174,7 +179,7 @@ func hGetRedis(key string, field string) string { ctx := context.Background() val, err := redisClient.HGet(ctx, key, field).Result() if err != nil { - log.Fatalf("Error getting key: %v", err) + fmt.Println("Error getting key: %v", err) } return val }