From e9e0c1f3abf1bbf83ebdb933d318caa2a45c15b0 Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期六, 30 三月 2024 17:14:11 +0800
Subject: [PATCH] 调整代码结构, 精简比对过程

---
 main.go |  112 ++++++++++++++++++++++++++------------------------------
 1 files changed, 52 insertions(+), 60 deletions(-)

diff --git a/main.go b/main.go
index 7ea4ffb..52ccec1 100644
--- a/main.go
+++ b/main.go
@@ -3,15 +3,15 @@
 import (
 	"context"
 	"flag"
-	"os"
 	"path"
-	"path/filepath"
-	"sdkCompare/proto/facecompare"
 	"strconv"
 	"time"
 
 	"sdkCompare/cache"
+	"sdkCompare/compare"
 	"sdkCompare/config"
+	"sdkCompare/db"
+	"sdkCompare/proto/facecompare"
 
 	"basic.com/pubsub/protomsg.git"
 	"basic.com/valib/logger.git"
@@ -23,36 +23,27 @@
 	"nanomsg.org/go-mangos/transport/tcp"
 )
 
-var (
-	envirment   string
-	procName    string
-	targetType1 string
-)
+const procName = "faceCompare"
 
 func init() {
-	flag.StringVar(&envirment, "e", "config", "")
-
-	flag.StringVar(&targetType1, "targetType1", "FaceDetect", "cache feature")
-
 	flag.Parse()
 	vaversion.Usage()
+}
 
-	config.Init(envirment)
+func main() {
+	err := config.Init()
+	if err != nil {
+		return
+	}
 
-	procName = filepath.Base(os.Args[0])
-	var logFile = path.Join(config.LogConf.Path, procName+".log")
+	var logFile = path.Join(config.LogConf.Path, "faceCompare.log")
 
 	// 鏃ュ織鍒濆鍖�
 	logger.InitLogger(logFile, config.LogConf.Level, config.LogConf.MaxSize, config.LogConf.MaxBackups, config.LogConf.MaxAge)
 	logger.Info("logger init success !")
-}
-
-func main() {
-	//esutil.InitLog(logger.Debug)
-	logger.Debug("This is a new server about sdk compare, proc name ", procName)
 
 	serveUrl := "tcp://0.0.0.0:"
-	if err := cache.ConnectDB(); err != nil {
+	if err := db.ConnectDB(); err != nil {
 		logger.Error(err.Error())
 		return
 	}
@@ -60,7 +51,7 @@
 	cache.InitDbTablePersons()
 	serveUrl = serveUrl + strconv.Itoa(config.DbPersonCompInfo.ServePort)
 
-	logger.Debugf("%s serve url:%s", procName, serveUrl)
+	logger.Infof("%s serve url:%s", procName, serveUrl)
 
 	Recv(serveUrl)
 }
@@ -73,6 +64,7 @@
 	if sock, err = rep.NewSocket(); err != nil {
 		logger.Error("new rep socket err:", err)
 	}
+
 	sock.AddTransport(ipc.NewTransport())
 	sock.AddTransport(tcp.NewTransport())
 	if err = sock.Listen(url); err != nil {
@@ -82,54 +74,54 @@
 	for {
 		select {
 		case <-ctx.Done():
-			logger.Debug("ctx done")
+			logger.Info("ctx done")
 			return
 		default:
 			msg, err = sock.Recv()
-			if err != nil {
+			if err != nil || len(msg) <= 0 {
 				continue
 			}
 
-			if len(msg) > 0 {
-				var compareType facecompare.CompareRequest
-				err = proto.Unmarshal(msg, &compareType)
-				if err != nil {
-					logger.Error("compareType json unmarshal error")
+			var request facecompare.CompareRequest
+			err = proto.Unmarshal(msg, &request)
+			if err != nil {
+				logger.Warn("CompareRequest json unmarshal error")
+				continue
+			}
+
+			var result []byte
+			if request.CompareType == facecompare.CompareType_Compare {
+				var compareArgInfo protomsg.CompareArgs
+				var cacheChangeInfo protomsg.EsPersonCacheChange
+				if err = proto.Unmarshal(request.Payload, &compareArgInfo); err == nil {
+					timeStart := time.Now()
+					result = compare.GetComparePersonBaseInfo(compareArgInfo)
+					logger.Debug("鐢ㄦ椂锛�", time.Since(timeStart))
+				} else if err = proto.Unmarshal(request.Payload, &cacheChangeInfo); err == nil {
+					cache.UpdateCache(&cacheChangeInfo)
+				} else {
+					logger.Warn("CompareArgs or EsPersonCacheChange json unmarshal error")
 					continue
 				}
-				var result []byte
-				if compareType.CompareType == facecompare.CompareType_Compare {
-					var compareArgInfo protomsg.CompareArgs
-					var cacheChangeInfo protomsg.EsPersonCacheChange
-					if err = proto.Unmarshal(compareType.Payload, &compareArgInfo); err == nil {
-						timeStart := time.Now()
-						result = cache.GetComparePersonBaseInfo(compareArgInfo)
-						logger.Debug("鐢ㄦ椂锛�", time.Since(timeStart))
-					} else if err = proto.Unmarshal(compareType.Payload, &cacheChangeInfo); err == nil {
-						cache.UpdateCache(&cacheChangeInfo)
-					} else {
-						logger.Error("CompareArgs or EsPersonCacheChange json unmarshal error")
-						continue
+			} else if request.CompareType == facecompare.CompareType_UpdateCache {
+				var compareEvent protomsg.CompareEvent
+				if err = proto.Unmarshal(request.Payload, &compareEvent); err == nil {
+					if compareEvent.EventType == protomsg.CompareEventType_ReInitCache { //鍔犲叆闆嗙兢鍚庨噸鏂板垵濮嬪寲缂撳瓨
+						cache.ReInitDbTablePersonsCache()
+					} else if compareEvent.EventType == protomsg.CompareEventType_UpdateCache { //搴撲腑鏂板鏇存柊缂撳瓨
+						id := string(compareEvent.Payload)
+						cache.UpdateDbPersonsCacheById(id)
+						logger.Info("--------------鏇存柊浜哄憳缂撳瓨, id: ", id)
 					}
-				} else if compareType.CompareType == facecompare.CompareType_UpdateCache {
-					var compareEvent protomsg.CompareEvent
-					if err = proto.Unmarshal(compareType.Payload, &compareEvent); err == nil {
-						if compareEvent.EventType == protomsg.CompareEventType_ReInitCache { //鍔犲叆闆嗙兢鍚庨噸鏂板垵濮嬪寲缂撳瓨
-							cache.ReInitDbTablePersonsCache()
-						} else if compareEvent.EventType == protomsg.CompareEventType_UpdateCache { //搴撲腑鏂板鏇存柊缂撳瓨
-							id := string(compareEvent.Payload)
-							cache.UpdateDbPersonsCacheById(id)
-							logger.Debug("--------------鏇存柊浜哄憳缂撳瓨, id: ", id)
-						}
-					} else {
-						logger.Error("CompareEvent json unmarshal error")
-						continue
-					}
+				} else {
+					logger.Warn("CompareEvent json unmarshal error")
+					continue
 				}
-				err = sock.Send(result)
-				if err != nil {
-					logger.Error("send reply err:", err.Error())
-				}
+			}
+
+			err = sock.Send(result)
+			if err != nil {
+				logger.Warn("send reply err:", err.Error())
 			}
 		}
 	}

--
Gitblit v1.8.0