更新时间:2024-10-24 GMT+08:00
Go-redis客户端连接Redis(Go)
本章节介绍使用go-redis客户端连接Redis实例的方法。更多的客户端的使用方法请参考Redis客户端。
以下操作以通过弹性云服务器上的客户端连接Redis实例为例进行说明。
前提条件
- 已成功创建Redis实例,且状态为“运行中”。创建Redis实例的操作请参考购买Redis实例。
- 查看并获取待连接Redis实例的IP地址/域名和端口。具体步骤请参见查看和修改DCS实例基本信息。
- 已创建弹性云服务器,创建弹性云服务器的方法,请参见购买弹性云服务器。
- 连接实例前确保客户端与Redis实例之间网络互通,具体请参考连接Redis网络要求。
Go-redis客户端连接Redis
- 登录弹性云服务器。
弹性云服务器操作系统,这里以Window为例。
- 在弹性云服务器安装VS 2017社区版。
- 启动VS 2017,新建一个工程,工程名自定义,这里设置为“redisdemo”。
- 导入go-redis的依赖包,在终端输入go get github.com/go-redis/redis。
图1 终端输入
- 编写如下代码:
package main import ( "fmt" "github.com/go-redis/redis" ) func main() { // 单机 rdb := redis.NewClient(&redis.Options{ Addr: "host:port", Password: "********", // no password set DB: 0, // use default DB }) val, err := rdb.Get("key").Result() if err != nil { if err == redis.Nil { fmt.Println("key does not exists") return } panic(err) } fmt.Println(val) //集群 rdbCluster := redis.NewClusterClient(&redis.ClusterOptions{ Addrs: []string{"host:port"}, Password: "********", }) val1, err1 := rdbCluster.Get("key").Result() if err1 != nil { if err == redis.Nil { fmt.Println("key does not exists") return } panic(err) } fmt.Println(val1) }
其中,host:port分别为Redis实例的IP地址/域名以及端口。IP地址/域名和端口获取见前提条件,请按实际情况修改后执行。********为创建Redis实例时自定义的密码,请按实际情况修改后执行。
- 执行go build -o test main.go命令进行打包,如打包名为test可执行文件。
若打包后需要在Linux系统下运行则需要在打包前设置:
set GOARCH=amd64
set GOOS=linux
- 执行./test连接实例。
父主题: 使用客户端连接Redis