首页 > 数据库 >go 使用redis

go 使用redis

时间:2023-01-26 16:02:03浏览次数:35  
标签:Dial return err 使用 redis func time go redigo

 

 

 

import (

redigo "github.com/gomodule/redigo/redis"

)

 

 

func NewPool() *redigo.Pool {
//return &redigo.Pool{
// MaxIdle: 3,
// IdleTimeout: 240 * time.Second,
// // Dial or DialContext must be set. When both are set, DialContext takes precedence over Dial.
// Dial: func () (redigo.Conn, error) { return redigo.Dial("tcp", "localhost",
// redigo.DialPassword("123"),
// ) },
//}

// timeout := time.Duration(20)

addr := fmt.Sprintf("%s:%s", "127.0.0.1", "6379")

redisPool := &redigo.Pool{
MaxIdle: 10,
MaxActive: 50,
IdleTimeout: 240 * time.Second,
Wait: true,
MaxConnLifetime: 60 * time.Second,
Dial: func() (redigo.Conn, error) {
con, err := redigo.Dial("tcp", addr,
redigo.DialPassword(""),
redigo.DialDatabase(0))

_, err = con.Do("PING")
return con, err
},
TestOnBorrow: func(c redigo.Conn, t time.Time) error {
if time.Since(t) < time.Minute {
return nil
}
_, err := c.Do("PING")
if err != nil {
fmt.Println(err)
}
return err
},
}

return redisPool
}

 

 

 

 

 

 

func main() {
pool := NewPool()
conn := pool.Get()
defer conn.Close()

s, err := conn.Do("LPUSH", "r_list", "tik tok")

log.Println(s)

if err == nil {
log.Println("this is ok")
} else {
log.Println("this is failed")
}
}

 



标签:Dial,return,err,使用,redis,func,time,go,redigo
From: https://blog.51cto.com/angdh/6023582

相关文章

  • springmvc关于通过使用路径占位符出现中文乱码解决办法
    springmvc接受json数据可以通过名称、通过对象,也可以通过路径。当使用路径占位符时,会出现中文乱码。此时,需要转换。即@GetMapping("/girl5")//http://localhost:8080/gi......
  • 微服务 Spring Boot 整合 Redis BitMap 实现 签到与统计
    文章目录​​⛄引言​​​​一、RedisBitMap基本用法​​​​⛅BitMap基本语法、指令​​​​⚡使用BitMap完成功能实现​​​​二、SpringBoot整合Redis实现签到......
  • go 编程基础学习笔记
    dos命令2023-01-261、切换盘符只要输入c:d:e:等即可2、显示目录详细内容dir3、切换目录cd留意一个点.代表当前目录,两个点..代表上一级目录4、清屏c......
  • 查看GPU使用情况和设置CUDA_VISIBLE_DEVICES
    文章目录​​一、简介​​​​二、查看GPU状态和信息​​​​三、使用​​​​3.1临时设置(临时设置方法一定要在第一次使用cuda之前进行设置)​​​​3.2python运行时设置......
  • 振弦采集模块参数配置工具的使用
    振弦采集模块参数配置工具的使用 通常情况下,在计算机端对模块进行测试、读写时,可使用一些通用的免费工具完成,如基于MODBUS通讯协议的调试工具MODSCAN、通用串口调试助手......
  • [Linux理论基础1]----手写和使用json完成[序列化和反序列化]
    文章目录​​前言​​​​一、应用层​​​​二、再谈"协议"​​​​三、网络版计算器​​​​手写版本​​​​使用第三方库json实现​​​​完整代码​​​​总结​​前......
  • Openstack Horizon and Django Compare the Working of authentication (Login)
    ​​http://fosshelp.blogspot.com/2014/01/openstack-horizon-and-django-compare.html​​copy:Workingofauthentication(Login)indjango===========================......
  • django 定时任务 apscheduler 踩坑
    本想每天定点的去查询一些数据然后用钉钉机器人发出来,前两三天还好好的,后面就执行ERROR了看了下错误问题,就跟连不上数据库一样,参考别人的解决方法   解决方法找......
  • 解决stackoverflow无法正常使用的问题
    访问StackOverflow时顶部有报错StackOverflow的官网在国内可以正常访问,但是网站使用的jquery是引用自google域名的,由于众所周知的原因,google域名提供的资源是无法访问的,所......
  • 更改微星主板开机logo图标
    原理通过ChangeLogo程序修改BIOS镜像文件内的开机logo图标再刷入修改后的BIOS系统测试主板型号:MAGB660MMORTARWIFIDDR4(迫击炮)1.下载BIOS镜像打开微......