redis_config.go 789 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package config
  2. // RedisOpts redis 连接属性
  3. type RedisOpts struct {
  4. Host string
  5. Username string
  6. Password string
  7. Database int
  8. MaxIdle int
  9. MaxActive int
  10. IdleTimeout int
  11. DB int
  12. MaxRetries int
  13. }
  14. type RedisConfig struct {
  15. BaseConfig
  16. opts RedisOpts
  17. }
  18. func (r *RedisConfig) GetConfig() interface{} {
  19. return r.opts
  20. }
  21. func (r *RedisConfig) InitConfig() {
  22. opts := RedisOpts{
  23. Host: r.GetString("host"),
  24. Username: "",
  25. Password: "",
  26. Database: 0,
  27. MaxIdle: 10,
  28. MaxActive: 100,
  29. IdleTimeout: 10,
  30. DB: 0,
  31. MaxRetries: 3,
  32. }
  33. r.opts = opts
  34. }
  35. func NewRedis() Config {
  36. return &RedisConfig{
  37. BaseConfig: BaseConfig{prefix: "redis"},
  38. opts: RedisOpts{},
  39. }
  40. }
  41. func init() {
  42. Register("redis", NewRedis)
  43. }