diff --git a/pkg/session/redis/sess_redis.go b/pkg/session/redis/sess_redis.go index 7e991ef5..100f9e1e 100644 --- a/pkg/session/redis/sess_redis.go +++ b/pkg/session/redis/sess_redis.go @@ -109,12 +109,15 @@ func (rs *SessionStore) SessionRelease(w http.ResponseWriter) { // Provider redis session provider type Provider struct { - maxlifetime int64 - savePath string - poolsize int - password string - dbNum int - poollist *redis.Client + maxlifetime int64 + savePath string + poolsize int + password string + dbNum int + idleTimeout time.Duration + idleCheckFrequency time.Duration + maxRetries int + poollist *redis.Client } // SessionInit init redis session @@ -149,25 +152,22 @@ func (rp *Provider) SessionInit(maxlifetime int64, savePath string) error { } else { rp.dbNum = 0 } - var idleTimeout time.Duration = 0 if len(configs) > 4 { timeout, err := strconv.Atoi(configs[4]) if err == nil && timeout > 0 { - idleTimeout = time.Duration(timeout) * time.Second + rp.idleTimeout = time.Duration(timeout) * time.Second } } - var idleCheckFrequency time.Duration = 0 if len(configs) > 5 { checkFrequency, err := strconv.Atoi(configs[5]) if err == nil && checkFrequency > 0 { - idleCheckFrequency = time.Duration(checkFrequency) * time.Second + rp.idleCheckFrequency = time.Duration(checkFrequency) * time.Second } } - var maxRetries = 0 if len(configs) > 6 { retries, err := strconv.Atoi(configs[6]) if err == nil && retries > 0 { - maxRetries = retries + rp.maxRetries = retries } } @@ -176,9 +176,9 @@ func (rp *Provider) SessionInit(maxlifetime int64, savePath string) error { Password: rp.password, PoolSize: rp.poolsize, DB: rp.dbNum, - IdleTimeout: idleTimeout, - IdleCheckFrequency: idleCheckFrequency, - MaxRetries: maxRetries, + IdleTimeout: rp.idleTimeout, + IdleCheckFrequency: rp.idleCheckFrequency, + MaxRetries: rp.maxRetries, }) return rp.poollist.Ping().Err() @@ -249,4 +249,3 @@ func (rp *Provider) SessionAll() int { func init() { session.Register("redis", redispder) } - diff --git a/pkg/session/redis_cluster/redis_cluster.go b/pkg/session/redis_cluster/redis_cluster.go index 75dc0e63..d6f051c1 100644 --- a/pkg/session/redis_cluster/redis_cluster.go +++ b/pkg/session/redis_cluster/redis_cluster.go @@ -107,12 +107,15 @@ func (rs *SessionStore) SessionRelease(w http.ResponseWriter) { // Provider redis_cluster session provider type Provider struct { - maxlifetime int64 - savePath string - poolsize int - password string - dbNum int - poollist *rediss.ClusterClient + maxlifetime int64 + savePath string + poolsize int + password string + dbNum int + idleTimeout time.Duration + idleCheckFrequency time.Duration + maxRetries int + poollist *rediss.ClusterClient } // SessionInit init redis_cluster session @@ -147,35 +150,32 @@ func (rp *Provider) SessionInit(maxlifetime int64, savePath string) error { } else { rp.dbNum = 0 } - var idleTimeout time.Duration = 0 if len(configs) > 4 { timeout, err := strconv.Atoi(configs[4]) if err == nil && timeout > 0 { - idleTimeout = time.Duration(timeout) * time.Second + rp.idleTimeout = time.Duration(timeout) * time.Second } } - var idleCheckFrequency time.Duration = 0 if len(configs) > 5 { checkFrequency, err := strconv.Atoi(configs[5]) if err == nil && checkFrequency > 0 { - idleCheckFrequency = time.Duration(checkFrequency) * time.Second + rp.idleCheckFrequency = time.Duration(checkFrequency) * time.Second } } - var maxRetries = 0 if len(configs) > 6 { retries, err := strconv.Atoi(configs[6]) if err == nil && retries > 0 { - maxRetries = retries + rp.maxRetries = retries } } rp.poollist = rediss.NewClusterClient(&rediss.ClusterOptions{ - Addrs: strings.Split(rp.savePath, ";"), - Password: rp.password, - PoolSize: rp.poolsize, - IdleTimeout: idleTimeout, - IdleCheckFrequency: idleCheckFrequency, - MaxRetries: maxRetries, + Addrs: strings.Split(rp.savePath, ";"), + Password: rp.password, + PoolSize: rp.poolsize, + IdleTimeout: rp.idleTimeout, + IdleCheckFrequency: rp.idleCheckFrequency, + MaxRetries: rp.maxRetries, }) return rp.poollist.Ping().Err() } diff --git a/pkg/session/redis_sentinel/sess_redis_sentinel.go b/pkg/session/redis_sentinel/sess_redis_sentinel.go index da287b8d..67790096 100644 --- a/pkg/session/redis_sentinel/sess_redis_sentinel.go +++ b/pkg/session/redis_sentinel/sess_redis_sentinel.go @@ -107,13 +107,16 @@ func (rs *SessionStore) SessionRelease(w http.ResponseWriter) { // Provider redis_sentinel session provider type Provider struct { - maxlifetime int64 - savePath string - poolsize int - password string - dbNum int - poollist *redis.Client - masterName string + maxlifetime int64 + savePath string + poolsize int + password string + dbNum int + idleTimeout time.Duration + idleCheckFrequency time.Duration + maxRetries int + poollist *redis.Client + masterName string } // SessionInit init redis_sentinel session @@ -157,37 +160,34 @@ func (rp *Provider) SessionInit(maxlifetime int64, savePath string) error { } else { rp.masterName = "mymaster" } - var idleTimeout time.Duration = 0 if len(configs) > 5 { timeout, err := strconv.Atoi(configs[4]) if err == nil && timeout > 0 { - idleTimeout = time.Duration(timeout) * time.Second + rp.idleTimeout = time.Duration(timeout) * time.Second } } - var idleCheckFrequency time.Duration = 0 if len(configs) > 6 { checkFrequency, err := strconv.Atoi(configs[5]) if err == nil && checkFrequency > 0 { - idleCheckFrequency = time.Duration(checkFrequency) * time.Second + rp.idleCheckFrequency = time.Duration(checkFrequency) * time.Second } } - var maxRetries = 0 if len(configs) > 7 { retries, err := strconv.Atoi(configs[6]) if err == nil && retries > 0 { - maxRetries = retries + rp.maxRetries = retries } } rp.poollist = redis.NewFailoverClient(&redis.FailoverOptions{ - SentinelAddrs: strings.Split(rp.savePath, ";"), - Password: rp.password, - PoolSize: rp.poolsize, - DB: rp.dbNum, - MasterName: rp.masterName, - IdleTimeout: idleTimeout, - IdleCheckFrequency: idleCheckFrequency, - MaxRetries: maxRetries, + SentinelAddrs: strings.Split(rp.savePath, ";"), + Password: rp.password, + PoolSize: rp.poolsize, + DB: rp.dbNum, + MasterName: rp.masterName, + IdleTimeout: rp.idleTimeout, + IdleCheckFrequency: rp.idleCheckFrequency, + MaxRetries: rp.maxRetries, }) return rp.poollist.Ping().Err()