package redis import ( "ai-gateway/common/config" "context" "errors" "github.com/go-redis/redis/v8" _ "github.com/spf13/viper/remote" "time" ) var client = initClient() func initClient() *redis.Client { redisClient := redis.NewClient(&redis.Options{ Addr: config.Instance.Redis.Addr, Password: config.Instance.Redis.Password, DB: config.Instance.Redis.DB, ReadTimeout: time.Duration(config.Instance.Redis.ReadTimeOut) * time.Millisecond, WriteTimeout: time.Duration(config.Instance.Redis.WriteTimeout) * time.Millisecond, }) _, err := redisClient.Ping(context.Background()).Result() if err != nil { panic(errors.New("redis connect ping failed, err:" + err.Error())) } return redisClient }