redis.go 833 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package redis
  2. import (
  3. "fmt"
  4. "github.com/go-redis/redis"
  5. setting "icloudapp.cn/tools/config"
  6. )
  7. var (
  8. RedisClient *redis.Client
  9. Nil = redis.Nil
  10. )
  11. // Init 初始化连接
  12. func Init(cfg *setting.RedisConfig) {
  13. RedisClient = redis.NewClient(&redis.Options{
  14. Addr: fmt.Sprintf("%s:%d", cfg.Host, cfg.Port),
  15. Password: cfg.Password, // no password set
  16. DB: cfg.DB, // use default DB
  17. PoolSize: cfg.PoolSize,
  18. MinIdleConns: cfg.MinIdleConns,
  19. })
  20. _, err := RedisClient.Ping().Result()
  21. if err != nil {
  22. panic(fmt.Sprintf("redis connect err, \v", err))
  23. }
  24. }
  25. func Close() {
  26. _ = RedisClient.Close()
  27. }
  28. /*
  29. ---- 测试写入和获取字符串 ----
  30. RedisClient.Set("username", "zhangsan", 0).Err()
  31. username, _ := RedisClient.Get("username").Result()
  32. fmt.Println(username) // zhangsan
  33. */