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