From 0bfb4e53db6d0cad8fe7a59945e86ac3adc7744e Mon Sep 17 00:00:00 2001 From: zhangzengfei <zhangzengfei@smartai.com> Date: 星期日, 08 十月 2023 14:12:40 +0800 Subject: [PATCH] 添加数据同步服务 --- main.go | 42 +++++++++++++++++++++++++++++++++++++++++- 1 files changed, 41 insertions(+), 1 deletions(-) diff --git a/main.go b/main.go index f9585bf..00d2599 100644 --- a/main.go +++ b/main.go @@ -6,7 +6,9 @@ "apsClient/model" "apsClient/nsq" "apsClient/pkg/logx" + "apsClient/pkg/sqlitex" "apsClient/router" + "apsClient/serf" "apsClient/service/plc_address" "fmt" "net/http" @@ -41,7 +43,27 @@ ////鎻愬墠鍔犺浇浠诲姟 //service.NewTaskService().GetTask() - go shutdown() + //go shutdown() + + // 鍚姩鏁版嵁鍚屾 + var serfStartChan = make(chan bool) + // 闇�瑕佸悓姝ョ殑琛� + var syncTables = []string{ + "procedures", + "process_model", + "production_progress", + "work_order", + } + + agent := serf.InitAgent("apsClient", syncTables, sqlitex.GetDB()) + agent.RegisterClusterEvent(serfClusterEvent) + go agent.Serve(serfStartChan) + + <-serfStartChan + + // 鍒ゆ柇褰撳墠闆嗙兢鐘舵�� + //agent.ClusterStatus == "master" + logx.Infof("apsClient start serve...") server := &http.Server{ Addr: fmt.Sprintf(":%d", conf.Conf.System.Port), @@ -60,3 +82,21 @@ logx.Infof("apsClient exited...") os.Exit(0) } + +func serfClusterEvent(stat int) { + switch stat { + + case serf.EventCreateCluster: + // 鍒涘缓闆嗙兢 + case serf.EventJoinCluster: + // 鍔犲叆闆嗙兢 + case serf.EventLeaveCluster: + // 閫�鍑洪泦缇� + case serf.EventSlave2Master: + // 鍒囨崲涓轰富鑺傜偣 + case serf.EventMaster2Slave: + // 鍒囨崲涓哄瓙鑺傜偣 + } + + fmt.Println("clusterEvent:", stat) +} \ No newline at end of file -- Gitblit v1.8.0