Go 语言操作redis环境搭建以及入门
Go语言操作redis非常简单,下面演示一个简单的string类型的操作package mainimport ("fmt""github.com/garyburd/redigo/redis")func main() {conn, err := redis.Dial("tcp", "127.0.0.1:6379")if err != nil {fmt...
·
Go语言操作redis非常简单,下面演示一个简单的string类型的操作
package main
import (
"fmt"
"github.com/garyburd/redigo/redis"
)
func main() {
conn, err := redis.Dial("tcp", "127.0.0.1:6379")
if err != nil {
fmt.Println("redis.Dial err=", err)
return
}
defer conn.Close()
// 通过go 向redis写入数据 string [key-val]
_, err = conn.Do("Set", "Name", "tomjerry猫猫")
if err != nil {
fmt.Println("set err=", err)
return
}
// 通过go 向redis读取数据 string [key-val]
r, err := redis.String(conn.Do("Get", "Name"))
if err != nil {
fmt.Println("set err=", err)
return
}
fmt.Println("操作ok ", r)
}
连接池的概念
Go 语言创建连接池
package main
import (
"fmt"
"github.com/garyburd/redigo/redis"
)
// 定义一个全局的pool
var pool *redis.Pool
func init() {
pool = &redis.Pool{
MaxIdle: 8, // 最大空闲链接数
MaxActive: 0, // 表示和数据库的最大链接数, 0表示无限制
IdleTimeout: 100, // 最大空闲时间
Dial: func() (redis.Conn, error) {
return redis.Dial("tcp", "localhost:6379")
},
}
}
func main() {
conn := pool.Get()
defer conn.Close()
_, err := conn.Do("Set", "name", "汤姆猫~")
if err != nil {
fmt.Println("conn.Do err=", err)
return
}
r, err := redis.String(conn.Do("Get", "name"))
if err != nil {
fmt.Println("conn.Do err=", err)
return
}
fmt.Println("r=", r)
}
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献4条内容
所有评论(0)