浏览代码

feature redis reconnect

ls 3 年之前
父节点
当前提交
8d83f64de7
共有 1 个文件被更改,包括 15 次插入0 次删除
  1. 15 0
      cache/redis.go

+ 15 - 0
cache/redis.go

@@ -100,6 +100,16 @@ func NewRedisClusterCache(opt RedisClusterOptions) (rc *RedisCache, err error) {
 	return
 }
 
+// Reconnect reconnect
+func (c RedisCache) Reconnect() (s string, err error) {
+	if c.cluster {
+		s, err = c.cc.Ping(ctx).Result()
+		return
+	}
+	s, err = c.c.Ping(ctx).Result()
+	return
+}
+
 // Get get value from cache
 func (c RedisCache) Get(k string) (string, error) {
 	if c.cluster {
@@ -203,6 +213,11 @@ func SetDefaultRedisClusterOption(opt RedisClusterOptions) (err error) {
 	return
 }
 
+// RedisReconnect re connect
+func RedisReconnect() (string, error) {
+	return defaultRedis.Reconnect()
+}
+
 // RedisGet get value from cache
 func RedisGet(k string) (string, error) {
 	return defaultRedis.Get(k)