From b5df418bd3a9a332caa1559e96136c149b6f0e44 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期二, 06 八月 2019 13:57:05 +0800 Subject: [PATCH] log --- controllers/fileController.go | 51 +++++++++++++++++++++++++++++++++++---------------- 1 files changed, 35 insertions(+), 16 deletions(-) diff --git a/controllers/fileController.go b/controllers/fileController.go index febd9cc..4640286 100644 --- a/controllers/fileController.go +++ b/controllers/fileController.go @@ -20,6 +20,7 @@ "sort" "strconv" "strings" + "sync" "time" "webserver/extend/code" "webserver/extend/config" @@ -598,8 +599,13 @@ } var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" //鏍规嵁浜鸿劯鍧愭爣鎵e嚭浜鸿劯灏忓浘 + t1 := time.Now() cutFaceImgData := util.SubImg(*pI, int(rcFace.Left), int(rcFace.Top), int(rcFace.Right), int(rcFace.Bottom)) + logger.Debug("SubImg鐢ㄦ椂锛�", time.Since(t1)) + t1 = time.Now() fileInfo, e := esutil.PostFormData(weedfsUri, filename, "file", cutFaceImgData) + logger.Debug("涓婁紶鍒皐eedfs鐢ㄦ椂:", time.Since(t1)) + t1 = time.Now() if e != nil { fmt.Println(e.Error()) return "", nil, e @@ -623,6 +629,7 @@ dbperson.FaceFeature = faceBase64 // 鐗瑰緛鍊糱ase64 鐮� result := addDbPerson(dbperson) + logger.Debug("addDbPerson鐢ㄦ椂锛�", time.Since(t1)) return fileNameOnly, result, nil } @@ -674,24 +681,36 @@ addResult := make(map[string]interface{}, 0) successList := make([]string, 0) failList := make([]string,0) + tAllStart := time.Now() + var wg sync.WaitGroup + var lock sync.Mutex for _, head := range fileHeaders { - //鏂囦欢鐨勫悕绉� - filename := head.Filename - file, err := head.Open() - fmt.Println(file, err, filename) - if err != nil { - log.Fatal(err) - } - - field, _, err1 := uploadFileReturnAddr(file, filename, tableId) - //extNames = append(extNames, field) - - if err1 != nil || field == "" { - failList = append(failList, filename) - } else { - successList = append(successList, filename) - } + wg.Add(1) + go func(head *multipart.FileHeader,tableId string) { + defer wg.Done() + tIStart := time.Now() + filename := head.Filename + file, err := head.Open() + fmt.Println(file, err, filename) + if err != nil { + lock.Lock() + failList = append(failList, filename) + lock.Unlock() + return + } + field, _, err1 := uploadFileReturnAddr(file, filename, tableId) + lock.Lock() + if err1 != nil || field == "" { + failList = append(failList, filename) + } else { + successList = append(successList, filename) + } + lock.Unlock() + logger.Debug(filename,"鍒囧浘鐢ㄦ椂锛�",time.Since(tIStart)) + }(head, tableId) + wg.Wait() } + logger.Debug("鍒�",len(fileHeaders),"寮犱汉鑴哥敤鏃讹細", time.Since(tAllStart)) addResult["successList"] = successList addResult["failList"] = failList addResult["fields"] = extNames -- Gitblit v1.8.0