panlei
2019-12-16 24ed193984da270b3cc5fd6d58803d95482c6ea1
main.go
@@ -29,7 +29,7 @@
var surveyPort = flag.Int("surveyPort", 40007, "survey port") //心跳
var pubPort = flag.Int("pubPort", 50007, "pubsub port")       //数据更新
var initchan = make(chan bool)
var env =  flag.String("env","dev","env set")
var env =  flag.String("env","pro","env set")
func init() {
   flag.Parse()
@@ -66,7 +66,7 @@
   go ruleserver.TimeTicker()
   go ruleserver.StartServer()
   personTrackPush()
   nReciever("ipc:///tmp/sdk-2-rules-process.ipc", deliver.PushPull, 1)
   wg.Wait()
@@ -78,22 +78,23 @@
func nRecvImpl(c deliver.Deliver, index int) {
   var msg []byte
   var wg1 sync.WaitGroup
   p,_ := ants.NewPool(20)
   syncCalculateSum := func() {
      Task(msg)
      wg1.Done()
   }
   wg1.Wait()
   //var wg1 sync.WaitGroup
   //p,_ := ants.NewPool(20)
   //syncCalculateSum := func() {
   //   Task(msg)
   //   wg1.Done()
   //}
   //wg1.Wait()
   var err error
   for {
      msg, err = c.Recv()
      if err == nil {
         wg1.Add(1)
         _ = p.Submit(syncCalculateSum)
         //go Task(msg)
         //wg1.Add(1)
         //_ = p.Submit(syncCalculateSum)
         Task(msg)
      } else {
         fmt.Println(err)
         //fmt.Println(err)
         //logger.Info(err)
      }
   }
}
@@ -125,4 +126,16 @@
   mess := f.(func(msg []byte, args *structure.SdkDatas)(protomsg.SdkMessage))(msg,args)
   return mess
}
// 启动追踪的请求
func personTrackPush(){
   p,err :=  plugin.Open("./algorithm/personTrack.so")
   if err != nil {
      panic(err)
   }
   f,err1 := p.Lookup("Push")
   if err1 != nil {
      panic("初始化人员追踪的推送函数")
   }
   go f.(func()())()
}