From 56f1c6f01920f20924114a946dabb851b6cb3f3f Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@smartai.com>
Date: 星期一, 08 七月 2024 20:06:07 +0800
Subject: [PATCH] 修复并发处理
---
serve/serve.go | 21 ++++++++++++---------
1 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/serve/serve.go b/serve/serve.go
index 031c02c..0e4ccb1 100644
--- a/serve/serve.go
+++ b/serve/serve.go
@@ -24,16 +24,20 @@
logger.Infof("worker %d done", id)
return
default:
- msg, err := sock.Recv()
- if err != nil || len(msg) <= 0 {
- continue
+ var msg *mangos.Message
+ var err error
+ if msg, err = sock.RecvMsg(); err != nil {
+ return
}
var request facecompare.CompareRequest
- err = proto.Unmarshal(msg, &request)
+ err = proto.Unmarshal(msg.Body, &request)
if err != nil {
logger.Warn("CompareRequest json unmarshal error")
- continue
+ if err = sock.SendMsg(msg); err != nil {
+ logger.Warn("send reply err:", err.Error())
+ continue
+ }
}
var result []byte
@@ -45,7 +49,6 @@
logger.Debug("鐢ㄦ椂锛�", time.Since(timeStart))
} else {
logger.Warn("CompareArgs or EsPersonCacheChange json unmarshal error")
- continue
}
} else if request.CompareType == facecompare.CompareType_UpdateCache {
var compareEvent protomsg.CompareEvent
@@ -63,12 +66,12 @@
}
} else {
logger.Warn("CompareEvent json unmarshal error")
- continue
}
}
- err = sock.Send(result)
- if err != nil {
+ msg.Body = result
+
+ if err = sock.SendMsg(msg); err != nil {
logger.Warn("send reply err:", err.Error())
}
}
--
Gitblit v1.8.0