Commit fe793910 authored by hujiebin's avatar hujiebin

feat:连上consul,才做服务发现

parent 8e3bcea7
...@@ -102,33 +102,33 @@ func init() { ...@@ -102,33 +102,33 @@ func init() {
} }
mylogrus.MyLog.Infof("userCenterAddr:%v,addr:%v", userCenterAddr, addrs) mylogrus.MyLog.Infof("userCenterAddr:%v,addr:%v", userCenterAddr, addrs)
} }
} resolver.Register(bd) // 服务注册
mylogrus.MyLog.Infof("connect userCenterAddr:%v", userCenterAddr) go func() {
resolver.Register(bd) address := consulapi.DefaultConfig().Address // 用consul api的default config
go func() { if err := consul.RegisterWatcher("services", nil, address, func(serviceStatus map[string]map[string][]string) {
address := consulapi.DefaultConfig().Address // 用consul api的default config if statusAddrs, ok := serviceStatus[userCenterConsulName]; ok {
if err := consul.RegisterWatcher("services", nil, address, func(serviceStatus map[string]map[string][]string) { healthAddrs, _ := statusAddrs[consulapi.HealthPassing]
if statusAddrs, ok := serviceStatus[userCenterConsulName]; ok { l := len(healthAddrs)
healthAddrs, _ := statusAddrs[consulapi.HealthPassing] if l > 0 {
l := len(healthAddrs) mylogrus.MyLog.Infof("consul service update state:%v-%v", userCenterConsulName, healthAddrs)
if l > 0 { bd.UpdateState(healthAddrs) // 更新新的注册名
mylogrus.MyLog.Infof("consul service update state:%v-%v", userCenterConsulName, healthAddrs) } else {
bd.UpdateState(healthAddrs) // 更新新的注册名 mylogrus.MyLog.Warnf("consul service update local state:%v-%v", userCenterConsulName, defaultUserCenterAddr)
} else { bd.UpdateState([]string{defaultUserCenterAddr}) // 都没有健康的,使用默认本地回环的
mylogrus.MyLog.Warnf("consul service update local state:%v-%v", userCenterConsulName, defaultUserCenterAddr) }
bd.UpdateState([]string{defaultUserCenterAddr}) // 都没有健康的,使用默认本地回环的 for status := range statusAddrs {
} if status == consulapi.HealthPassing {
for status := range statusAddrs { continue
if status == consulapi.HealthPassing { }
continue mylogrus.MyLog.Warnf("consul service wrong state:%v-%v-%v", userCenterConsulName, status, statusAddrs[status])
} }
mylogrus.MyLog.Warnf("consul service wrong state:%v-%v-%v", userCenterConsulName, status, statusAddrs[status])
} }
}); err != nil {
mylogrus.MyLog.Errorf("启动 consul 的watch监控失败")
} }
}); err != nil { }()
mylogrus.MyLog.Errorf("启动 consul 的watch监控失败") }
} mylogrus.MyLog.Infof("connect userCenterAddr:%v", userCenterAddr)
}()
//userCenterAddr := services[0].Address + ":" + strconv.Itoa(services[0].ServicePort) //userCenterAddr := services[0].Address + ":" + strconv.Itoa(services[0].ServicePort)
//mylogrus.MyLog.Printf("Choose userCenter %s, %s, weights: %v\n", services[0].ID, userCenterAddr, services[0].ServiceWeights) //mylogrus.MyLog.Printf("Choose userCenter %s, %s, weights: %v\n", services[0].ID, userCenterAddr, services[0].ServiceWeights)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment