From e5249a1d2c507ac51689214680c00fcd1b3ab2ef Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期四, 08 八月 2019 20:46:11 +0800
Subject: [PATCH] 测试多线程
---
main.go | 40 ++++++++++++++++++++++++----------------
1 files changed, 24 insertions(+), 16 deletions(-)
diff --git a/main.go b/main.go
index e0294ae..8ec5686 100644
--- a/main.go
+++ b/main.go
@@ -57,33 +57,41 @@
var msg []byte
var err error
-
+ msgChan := make(chan []byte,100)
for {
select {
// case <-ctx.Done():
// return
default:
msg, err = c.Recv()
+ msgChan <- msg
if err != nil {
logger.Info("recv error : ", err)
fmt.Println("recv error : ", err)
continue
} else {
- arg := ruleserver.SdkDatas{}
- //paramFormat(msg, &arg)
- logger.Error()
- start := time.Now()
- m := paramFormat(msg, &arg)
- // 杩涜瑙勫垯澶勭悊鍒ゆ柇(鎵撲笂瑙勫垯鐨勬爣绛�)
- ruleserver.Judge(&arg,&m) // 鎶妔dkMessage浼犺繘鍘伙紝鏂逛究缂撳瓨鏁版嵁鏃舵嫾鍑轰竴涓猺esultMag
- // 鎶奱rg閲岀殑鎵撶殑鏍囩鎷垮嚭鏉ョ粰m鍐嶅皝瑁呬竴灞�
- resultMsg := ruleserver.ResultMsg{SdkMessage: &m, RuleResult: arg.RuleResult}
- logger.Debug("姣斿瀹屾墍鐢ㄦ椂闂达細",time.Since(start))
- // 灏嗘墦瀹屾爣绛剧殑鏁版嵁鎻掑叆鍒癊S
- insertdata.InsertToEs(resultMsg)
- logger.Debug("鎻掑叆瀹孍s鎵�鐢ㄦ椂闂达細",time.Since(start))
- //浜嬩欢鎺ㄩ��
- //go labelFilter.Judge(resultMsg)
+ wg := sync.WaitGroup{}
+ for msg := range msgChan {
+ wg.Add(1)
+ go func() {
+ logger.Debug("褰撳墠鏃堕棿鎴筹細",time.Now().Unix())
+ arg := ruleserver.SdkDatas{}
+ //paramFormat(msg, &arg)
+ start := time.Now()
+ m := paramFormat(msg, &arg)
+ // 杩涜瑙勫垯澶勭悊鍒ゆ柇(鎵撲笂瑙勫垯鐨勬爣绛�)
+ ruleserver.Judge(&arg,&m) // 鎶妔dkMessage浼犺繘鍘伙紝鏂逛究缂撳瓨鏁版嵁鏃舵嫾鍑轰竴涓猺esultMag
+ // 鎶奱rg閲岀殑鎵撶殑鏍囩鎷垮嚭鏉ョ粰m鍐嶅皝瑁呬竴灞�
+ resultMsg := ruleserver.ResultMsg{SdkMessage: &m, RuleResult: arg.RuleResult}
+ logger.Debug("瑙勫垯鍒ゆ柇瀹屾墍鐢ㄦ椂闂达細",time.Since(start))
+ // 灏嗘墦瀹屾爣绛剧殑鏁版嵁鎻掑叆鍒癊S
+ insertdata.InsertToEs(resultMsg)
+ logger.Debug("鎻掑叆瀹孍s鎵�鐢ㄦ椂闂达細",time.Since(start))
+ //浜嬩欢鎺ㄩ��
+ //go labelFilter.Judge(resultMsg)
+ wg.Done()
+ }()
+ }
}
}
}
--
Gitblit v1.8.0