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