1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- package comm
- import (
- "errors"
- "fmt"
- "os"
- "strconv"
- "strings"
- "github.com/go-redis/redis/v8"
- )
- func createRedisClient(rediscnf string) (*redis.Client, error) {
- redisOps := strings.Split(rediscnf, "#")
- if len(redisOps) < 2 {
- return nil, fmt.Errorf("无效redis地址 需要127.0.0.1:16379#0#username#password当前 %s", rediscnf)
- }
- fmt.Println("redis-format addr => ", redisOps[0])
- db, err := strconv.Atoi(redisOps[1])
- if err != nil {
- return nil, errors.New("非法redis数据库 id")
- }
- connOption := &redis.Options{
- Addr: redisOps[0],
- DB: db, // use default DB
- }
- if len(redisOps) == 4 {
- connOption.Username = redisOps[2]
- connOption.Password = redisOps[3]
- }
- return redis.NewClient(connOption), err
- }
- func (bus *NatsBus) NewRedisFromConfig(redisConfKey string, timeout ...interface{}) (*redis.Client, error) {
- //127.0.0.1:16379#0#username#password
- rediscnf, err := bus.RequestConfig(redisConfKey)
- if err != nil {
- panic(err)
- }
- redisenv := os.Getenv("REDIS")
- if len(redisenv) > 0 {
- rediscnf = redisenv
- }
- fmt.Println("config rediscnf => ", rediscnf)
- fmt.Println("env rediscnf => ", redisenv)
- return createRedisClient(rediscnf)
- }
- func (bus *NatsBus) NewRedisFromConfigDev(redisConfKey string, timeout ...interface{}) (*redis.Client, error) {
- //127.0.0.1:16379#0#username#password
- rediscnf, err := bus.RequestConfigDev(redisConfKey)
- if err != nil {
- panic(err)
- }
- redisenv := os.Getenv("REDIS")
- if len(redisenv) > 0 {
- rediscnf = redisenv
- }
- fmt.Println("config rediscnf => ", rediscnf)
- fmt.Println("env rediscnf => ", redisenv)
- return createRedisClient(rediscnf)
- }
|