diff --git a/main.go b/main.go index f7e73464d87b6c0b445241bc3eb145958f416381..64a74d48e73043e720a8fb2170a3c6c0328338c1 100644 --- a/main.go +++ b/main.go @@ -6,13 +6,11 @@ import ( "fmt" "github.com/go-redis/redis/v8" "github.com/golang/protobuf/proto" - "github.com/hashicorp/consul/api" "google.golang.org/grpc" "google.golang.org/grpc/keepalive" "google.golang.org/grpc/resolver" "google.golang.org/grpc/resolver/manual" "hilo-socketCenter/common" - "hilo-socketCenter/common/consul" "hilo-socketCenter/common/dingding" "hilo-socketCenter/common/mylogrus" "hilo-socketCenter/common/redisCli" @@ -43,24 +41,22 @@ var kacp = keepalive.ClientParameters{ // 初始化userCenterClient func init() { - client, err := api.NewClient(api.DefaultConfig()) //非默认情况下需要设置实际的参数 + redisKey := fmt.Sprintf("service:userCenter") + ipPorts, err := redisCli.GetRedisCluster().ZRangeByScore(context.Background(), redisKey, &redis.ZRangeBy{ + Min: fmt.Sprintf("%d", time.Now().Add(-time.Second*15).Unix()), // 3倍心跳 + Max: "+inf", + }).Result() if err != nil { - mylogrus.MyLog.Fatalln(err) + failMsg := fmt.Sprintf("get service fail,svc:%v,err:%v", "userCenter", err) + mylogrus.MyLog.Errorf(failMsg) + } else if len(ipPorts) > 0 { } - cataLog := client.Catalog() - if cataLog == nil { - mylogrus.MyLog.Fatalln("No catalog.") - } - addr, err := consul.GetServices(cataLog, "userCenter") - if err != nil { - mylogrus.MyLog.Fatalln(err) - } - if len(addr) == 0 { - mylogrus.MyLog.Fatalln("No userCenter available.") + if len(ipPorts) <= 0 { + ipPorts = []string{"127.0.0.1:50040"} } - addresses := make([]resolver.Address, len(addr)) - for i, s := range addr { + addresses := make([]resolver.Address, len(ipPorts)) + for i, s := range ipPorts { addresses[i].Addr = s mylogrus.MyLog.Infof("address : %s", s) }