2 Star 0 Fork 1

taotechip/modules

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
proxy.go 1.94 KB
一键复制 编辑 原始数据 按行查看 历史
kyugao 提交于 2025-02-27 14:25 +08:00 . update
package cache
import (
"github.com/gomodule/redigo/redis"
)
type ConnProxy struct {
dbNum string
}
func GetProxy(dbNum string) *ConnProxy {
return &ConnProxy{dbNum: dbNum}
}
func (proxy *ConnProxy) connect() redis.Conn {
conn := GetConnWithNum(proxy.dbNum)
return conn
}
func (proxy *ConnProxy) disconnect(conn redis.Conn) {
_ = conn.Close()
}
func (proxy *ConnProxy) Expire(key string, seconds int) (err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
_, err = conn.Do("EXPIRE", key, seconds)
return
}
func (proxy *ConnProxy) Exist(key string) (result bool, err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
result, err = redis.Bool(conn.Do("EXISTS", key))
return
}
func (proxy *ConnProxy) Set(key string, value interface{}) (err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
_, err = conn.Do("SET", key, value)
return
}
func (proxy *ConnProxy) HSet(key string, field string, value interface{}) (err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
_, err = conn.Do("HSET", key, field, value)
return
}
func (proxy *ConnProxy) HGet(key string, field string) (result interface{}, err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
result, err = conn.Do("HGET", key, field)
return
}
func (proxy *ConnProxy) HDel(key string, field string) (err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
_, err = conn.Do("HDEL", key, field)
return
}
func (proxy *ConnProxy) SetEx(key string, seconds int, value interface{}) (err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
_, err = conn.Do("SETEX", key, seconds, value)
return
}
func (proxy *ConnProxy) Get(key string) (value interface{}, err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
value, err = conn.Do("GET", key)
return
}
func (proxy *ConnProxy) Del(key string) (err error) {
conn := proxy.connect()
defer proxy.disconnect(conn)
_, err = conn.Do("DEL", key)
return
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/taotechip/modules.git
git@gitee.com:taotechip/modules.git
taotechip
modules
modules
v1.10.5

搜索帮助