当前位置: 首页 > news >正文

go-reids

初始化客户端

package mainimport ("context""fmt""github.com/redis/go-redis/v9"
)var ctx = context.Background()func main() {rdb := redis.NewClient(&redis.Options{Addr:     "localhost:6379", // Redis 服务器地址Password: "",               // 没有密码则留空DB:       0,                // 使用默认数据库})// 测试连接pong, err := rdb.Ping(ctx).Result()if err != nil {fmt.Println("无法连接到 Redis:", err)return}fmt.Println("连接成功:", pong)
}

go-redis 常用命令用法

设置和获取值 Set Get

// 设置一个键值对
err := rdb.Set(ctx, "name", "Go-Redis", 0).Err()
if err != nil {fmt.Println("设置值失败:", err)return
}// 获取一个键值对
val, err := rdb.Get(ctx, "name").Result()
if err != nil {fmt.Println("获取值失败:", err)return
}
fmt.Println("name:", val)

哈希操作

// 设置哈希字段
err := rdb.HSet(ctx, "user:1000", "name", "John", "age", 30).Err()
if err != nil {fmt.Println("设置哈希字段失败:", err)return
}// 获取哈希字段
name, err := rdb.HGet(ctx, "user:1000", "name").Result()
if err != nil {fmt.Println("获取哈希字段失败:", err)return
}
fmt.Println("user:1000 name:", name)

列表操作

// 将值推入列表
err := rdb.LPush(ctx, "tasks", "task1", "task2").Err()
if err != nil {fmt.Println("推入列表失败:", err)return
}// 从列表弹出值
task, err := rdb.LPop(ctx, "tasks").Result()
if err != nil {fmt.Println("弹出列表值失败:", err)return
}
fmt.Println("task:", task)

集合操作

// 添加元素到集合
err := rdb.SAdd(ctx, "tags", "redis", "go", "database").Err()
if err != nil {fmt.Println("添加到集合失败:", err)return
}// 获取集合中的所有元素
tags, err := rdb.SMembers(ctx, "tags").Result()
if err != nil {fmt.Println("获取集合元素失败:", err)return
}
fmt.Println("tags:", tags)

有序集合操作

ZAdd ZRange

// 添加元素到有序集合
err := rdb.ZAdd(ctx, "scores", &redis.Z{Score: 100, Member: "Alice"}, &redis.Z{Score: 200, Member: "Bob"}).Err()
if err != nil {fmt.Println("添加到有序集合失败:", err)return
}// 获取有序集合中的元素
scores, err := rdb.ZRangeWithScores(ctx, "scores", 0, -1).Result()
if err != nil {fmt.Println("获取有序集合元素失败:", err)return
}
for _, z := range scores {fmt.Printf("%s: %f\n", z.Member, z.Score)
}
http://www.hskmm.com/?act=detail&tid=16183

相关文章:

  • AI完美声音克隆及情绪控制,与真人无异,Lark下载介绍
  • WSL,适用于 Linux 的 Windows 子系统
  • 9-24
  • 代码随想录算法训练营第八天 |344.反转字符串、541. 反转字符串II、LCR 122. 路径加密
  • 9/24
  • 安装与卸载JDK8
  • mysql慢sql配置
  • Linux zdb -C (zfs Debugger调试器)
  • 从零开始实现简易版Netty(八) MyNetty 实现Small规格的池化内存分配
  • 测试脚本
  • 自动化测试脚本
  • 解题报告-字符串(str.*)
  • Linux 系统中的 /dev/disk/by-id/目录作用详解
  • glTF/glb:您需要知道的一切,怎么免费获取下载
  • keepalived服务器
  • P8818 [CSP-S 2022] 策略游戏
  • FortiGate连接中国联通SDWAN
  • 第五章 运算符、表达式和语句
  • 学习问题日记-2
  • 封神台复现
  • 李之一的Java第一作
  • 2025.9.24 闲话:Lucas 定理究极证明
  • Are English people good or bad
  • 9
  • Lampiao靶场渗透wp-脏牛提权
  • 画矩形
  • NOIP 模拟赛八
  • 第三篇
  • 基于cloacked-pixel隐写工具爆破项目
  • 随便写的