每日一库:Redis in Go

2023-10-16 19:47:44 浏览数 (2)

安装库

首先,我们需要安装go-redis库。在你的终端中运行以下命令:

代码语言:javascript复制
go get github.com/redis/go-redis/v9

创建Redis客户端

在安装了库之后,我们可以创建一个Redis客户端。以下是一个示例:

代码语言:javascript复制
package main

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

func main() {
    client := redis.NewClient(&redis.Options{
        Addr:     "localhost:6379",
        Password: "", // no password set
        DB:       0,  // use default DB
    })

    pong, err := client.Ping().Result()
    fmt.Println(pong, err)
}

在这个例子中,我们创建了一个新的Redis客户端,连接到本地的Redis服务器。然后,我们发送一个PING命令来测试连接是否正常。

执行Redis操作

一旦我们有了一个Redis客户端,我们就可以执行各种Redis操作。以下是一些基本操作的例子:

字符串(String)

代码语言:javascript复制
err := client.Set("key", "value", 0).Err()
if err != nil {
    panic(err)
}

val, err := client.Get("key").Result()
if err != nil {
    panic(err)
}
fmt.Println("key", val)

列表(List)

代码语言:javascript复制
err := client.LPush("list", "value").Err()
if err != nil {
    panic(err)
}

val, err := client.LRange("list", 0, -1).Result()
if err != nil {
    panic(err)
}
fmt.Println("list", val)

集合(Set)

代码语言:javascript复制
err := client.SAdd("set", "member").Err()
if err != nil {
    panic(err)
}

val, err := client.SMembers("set").Result()
if err != nil {
    panic(err)
}
fmt.Println("set", val)

散列(Hash)

代码语言:javascript复制
fields := make(map[string]interface{})
fields["field"] = "value"
err := client.HMSet("hash", fields).Err()
if err != nil {
    panic(err)
}

val, err := client.HGetAll("hash").Result()
if err != nil {
    panic(err)
}
fmt.Println("hash", val)

声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)[1]进行许可,使用时请注明出处。 Author: mengbin[2] blog: mengbin[3] Github: mengbin92[4] cnblogs: 恋水无意[5]

References

[1] 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0): https://creativecommons.org/licenses/by-nc-sa/4.0/deed.zh [2] mengbin: mengbin1992@outlook.com [3] mengbin: https://mengbin.top [4] mengbin92: https://mengbin92.github.io/ [5] 恋水无意: https://www.cnblogs.com/lianshuiwuyi/

0 人点赞