首页 存档 技术 查看内容

Redigo--用池管理redis连接

2018-3-30 13:00 |来自: 互联网 427 0

摘要: 在golang的项目中,若要频繁的用redis(或者其他类似的NoSQL)来存取数据,最好用redigo自带的池来管理连接。 不然的话,每当要操作redis时,建立连接,用完后再关闭,会导致大量的连接处于TIME_WAIT状态(redis连接 ...

在golang的项目中,若要频繁的用redis(或者其他类似的NoSQL)来存取数据,最好用redigo自带的池来管理连接。

不然的话,每当要操作redis时,建立连接,用完后再关闭,会导致大量的连接处于TIME_WAIT状态(redis连接本质上就是tcp)。

注:TIME_WAIT,也叫TCP半连接状态,会继续占用本地端口。

以下为redis连接池的golang实现:

[plain]view plaincopy

  1. import(

  2. "github.com/garyburd/redigo/redis"

  3. "github.com/astaxie/beego"

  4. "time"

  5. )

  6. var(

  7. //定义常量

  8. RedisClient*redis.Pool

  9. REDIS_HOSTstring

  10. REDIS_DBint

  11. )

  12. funcinit(){

  13. //从配置文件获取redis的ip以及db

  14. REDIS_HOST=beego.AppConfig.String("redis.host")

  15. REDIS_DB,_=beego.AppConfig.Int("redis.db")

  16. //建立连接池

  17. RedisClient=

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部