github地址:go 分布式微服务框架 Origin
初识Origin:https://blog.csdn.net/u013645668/article/details/115876646
1、动态发现服务的安装
打开cluster目录下的dynamicdiscovery.go, 会看到
DynamicDiscoveryMaster 和 DynamicDiscoveryClient
这两个结构都有组合service.Service,那既然是Service,那这两个Service是如何安装的呢,像其他服务那样在节点配置里添加服务名吗?
那样每个节点都需要添加,显然太笨了,看过cluster.go,就会知道有这样一个接口:
func (cls *Cluster) SetupServiceDiscovery(localNodeId int,setupServiceFun SetupServiceFun) {
// ....
//2.如果为动态服务发现安装本地发现服务
cls.serviceDiscovery = getDynamicDiscovery()
if localMaster == true {
cls.appendService(DynamicDiscoveryMasterName,false)
}
cls.appendService(DynamicDiscoveryClientName,true)
}
那d