liuxiaolong
2020-01-16 c43a8e3e552e00b653e40f45615bf46b2ddd40e2
add log
1个文件已修改
23 ■■■■ 已修改文件
mangos.go 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
mangos.go
@@ -49,6 +49,7 @@
                //        ch <- msg
                //    }
                //}
                fmt.Println("<-pub.pubCh,pub.surveyors.Len:",pub.surveyors.Cardinality())
                if pub.surveyors.Cardinality() >0 {
                    sendB, _ := json.Marshal(msg)
                    discoveryServer.PublishMsg(string(sendB))
@@ -63,21 +64,19 @@
                //}
                removedNodes := pub.surveyors.Difference(nodeIds)
                addedNodes := nodeIds.Difference(pub.surveyors)
                if len(nodeIds.ToSlice()) >0 {
                    if addedNodes.Cardinality() >0 { //有新节点上线的时候,需要发一次消息,节点离线的时候不用管
                        fmt.Println("removedNodes:", removedNodes, "addedNodes:", addedNodes)
                        if len(msgCache) > 0 {
                            for _,cMsg := range msgCache {
                                sendB, _ := json.Marshal(cMsg)
                                discoveryServer.PublishMsg(string(sendB))
                            }
                if addedNodes.Cardinality() >0 { //有新节点上线的时候,需要发一次消息,节点离线的时候不用管
                    fmt.Println("removedNodes:", removedNodes, "addedNodes:", addedNodes)
                    if len(msgCache) > 0 {
                        for _,cMsg := range msgCache {
                            sendB, _ := json.Marshal(cMsg)
                            discoveryServer.PublishMsg(string(sendB))
                        }
                    }
                    pub.surveyors = nodeIds
                } else {//订阅者全部阵亡
                    pub.surveyors = nodeIds
                    time.Sleep(10 * time.Millisecond)
                }
                pub.surveyors = nodeIds
                time.Sleep(10 * time.Millisecond)
            }
        }
    }()