package main
import (
"fmt"
"github.com/garyburd/redigo/redis"
)
//定义一个全局pool
var pool *redis.Pool
//当启动程序时,就是初始还连接池init()
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() {
//先从pool取出一个连接
conn:=pool.Get()
defer conn.Close() //延迟连接---归还到连接池,而不是关闭
//存储数据
_,err:=conn.Do("Set","name","猪八戒")
if err!=nil{
fmt.Println("set err=",err)
return
}
//取出数据
r,err:=redis.String(conn.Do("Get","name"))
if err!=nil{
fmt.Println("conn.do err=",err)
return
}
fmt.Println("取出的数据是:",r)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)