mirror of
https://github.com/duanhf2012/origin.git
synced 2026-02-03 22:45:13 +08:00
新增私有结点功能
This commit is contained in:
@@ -52,6 +52,7 @@ cluster.json如下:
|
|||||||
"NodeList":[
|
"NodeList":[
|
||||||
{
|
{
|
||||||
"NodeId": 1,
|
"NodeId": 1,
|
||||||
|
"Private": false,
|
||||||
"ListenAddr":"127.0.0.1:8001",
|
"ListenAddr":"127.0.0.1:8001",
|
||||||
"NodeName": "Node_Test1",
|
"NodeName": "Node_Test1",
|
||||||
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
||||||
@@ -59,6 +60,7 @@ cluster.json如下:
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"NodeId": 2,
|
"NodeId": 2,
|
||||||
|
"Private": false,
|
||||||
"ListenAddr":"127.0.0.1:8002",
|
"ListenAddr":"127.0.0.1:8002",
|
||||||
"NodeName": "Node_Test1",
|
"NodeName": "Node_Test1",
|
||||||
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
||||||
@@ -69,6 +71,7 @@ cluster.json如下:
|
|||||||
---------------
|
---------------
|
||||||
以上配置了两个结点服务器程序:
|
以上配置了两个结点服务器程序:
|
||||||
* NodeId: 表示origin程序的结点Id标识,不允许重复。
|
* NodeId: 表示origin程序的结点Id标识,不允许重复。
|
||||||
|
* Private: 是否私有结点,如果为true,表示其他结点不会发现它,但可以自我运行。
|
||||||
* ListenAddr:Rpc通信服务的监听地址
|
* ListenAddr:Rpc通信服务的监听地址
|
||||||
* NodeName:结点名称
|
* NodeName:结点名称
|
||||||
* remark:备注,可选项
|
* remark:备注,可选项
|
||||||
@@ -257,6 +260,7 @@ func main(){
|
|||||||
"NodeList":[
|
"NodeList":[
|
||||||
{
|
{
|
||||||
"NodeId": 1,
|
"NodeId": 1,
|
||||||
|
"Private": false,
|
||||||
"ListenAddr":"127.0.0.1:8001",
|
"ListenAddr":"127.0.0.1:8001",
|
||||||
"NodeName": "Node_Test1",
|
"NodeName": "Node_Test1",
|
||||||
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
"remark":"//以_打头的,表示只在本机进程,不对整个子网开发",
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ var configDir = "./config/"
|
|||||||
type NodeInfo struct {
|
type NodeInfo struct {
|
||||||
NodeId int
|
NodeId int
|
||||||
NodeName string
|
NodeName string
|
||||||
|
Private bool
|
||||||
ListenAddr string
|
ListenAddr string
|
||||||
ServiceList []string
|
ServiceList []string
|
||||||
}
|
}
|
||||||
@@ -81,7 +82,7 @@ func (cls *Cluster) delServiceNode(serviceName string,nodeId int){
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (cls *Cluster) serviceDiscoverySetNodeInfo (nodeInfo *NodeInfo){
|
func (cls *Cluster) serviceDiscoverySetNodeInfo (nodeInfo *NodeInfo){
|
||||||
if nodeInfo.NodeId == cls.localNodeInfo.NodeId {
|
if nodeInfo.NodeId == cls.localNodeInfo.NodeId || len(nodeInfo.ServiceList)==0 || nodeInfo.Private == true {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user