diff --git a/.beagle-arm.yml b/.beagle-arm.yml index f43eccc059f24faa38ac1a2c080f57b64f9e4995..113ae8fe85799146ec1e468534280585188389f0 100644 --- a/.beagle-arm.yml +++ b/.beagle-arm.yml @@ -19,7 +19,7 @@ pipeline: image: registry.cn-qingdao.aliyuncs.com/wod/devops-docker-arm64:1.0 volumes: - /var/run/docker.sock:/var/run/docker.sock - base: registry.cn-qingdao.aliyuncs.com/wod/alpine-glibc-arm64:3.12 + base: registry.cn-qingdao.aliyuncs.com/wod/debian-arm64:buster-slim repo: wod/apaas-meshproxy-arm64 dockerfile: build/arm.dockerfile version: "v3.0.0" diff --git a/src/handler/proxyhandler.go b/src/handler/proxyhandler.go index 16965096ac67380b86a876e9d2a5b1a920d10b8c..4616dc65dfebe0a93bf688f9f98851ff96af520a 100644 --- a/src/handler/proxyhandler.go +++ b/src/handler/proxyhandler.go @@ -3,6 +3,7 @@ package handler import ( "bytes" "compress/gzip" + "crypto/tls" "encoding/json" "errors" "fmt" @@ -35,6 +36,7 @@ func Proxy(c *gin.Context) { proxyData, err := service.GetRealPath(applyId) if err != nil { + fmt.Println("err......", err.Error()) c.Error(err) return } @@ -44,11 +46,14 @@ func Proxy(c *gin.Context) { c.JSON(200, res) return } - f, _ := forward.New(forward.PassHostHeader(true), forward.ResponseModifier(func(resp *http.Response) error { + roundTripper := http.DefaultTransport.(*http.Transport) + roundTripper.TLSClientConfig = &tls.Config{InsecureSkipVerify: true} + f, _ := forward.New(forward.PassHostHeader(true), forward.RoundTripper(roundTripper), forward.ResponseModifier(func(resp *http.Response) error { //Resp = resp //判断是否超过调用次数是否可以调用 callflag, sensitiveflag, err := service.QueryCallsCount(proxyData) if err != nil { + fmt.Println("err......", err.Error()) return nil } if callflag == false { @@ -76,11 +81,11 @@ func Proxy(c *gin.Context) { res = service.SensitiveFilter(proxyData, res) } //计次 - bgn := time.Now() - fmt.Println(`开始携程:`, bgn) + //bgn := time.Now() + //fmt.Println(`开始携程:`, bgn) go service.CallCounts(proxyData) - end := time.Since(bgn) - fmt.Println("结束携程: ", end) + //end := time.Since(bgn) + //fmt.Println("结束携程: ", end) //err = service.CallCounts(proxyData) //if err != nil { // Return(nil, err, resp) @@ -94,13 +99,16 @@ func Proxy(c *gin.Context) { // return nil //} Return(res, nil, resp) - appeT := time.Since(appT) - fmt.Println("结束: ", appeT) + //appeT := time.Since(appT) + //fmt.Println("结束: ", appeT) return nil })) c.Request.URL = testutils.ParseURI(getProxyURL(proxyData, c.Request)) + fmt.Println("c.Request.URL-------", c.Request.URL) c.Request.RequestURI = getRequestURI(c.Request) + fmt.Println("c.Request-------", c.Request) c.Request.Host = getHost(proxyData.RealUrl) + fmt.Println("proxyData.RealUrl-------", proxyData.RealUrl) f.ServeHTTP(c.Writer, c.Request) } @@ -146,11 +154,13 @@ func Return(res interface{}, err error, Resp *http.Response) { } } else { - if Resp.Header.Get("Content-Encoding") == "gzip" { - b = []byte(err.Error()) - b = gzipCompress(&b) - } + Resp.Header.Set("Content-Encoding", "utf-8") + b = []byte(err.Error()) } + //if Resp.Header.Get("Content-Encoding") == "gzip" { + //Resp.Header.Set("Content-Encoding","gzip") + //b = gzipCompress(&b) + //} Resp.Header.Set("X-Log-By", "Apaas") Resp.Header.Set("Content-Length", strconv.Itoa(len(b))) Resp.Body = ioutil.NopCloser(bytes.NewBuffer(b)) diff --git a/src/main.go b/src/main.go index dbdf3624353fd5215aadfdb225d8bd86a830be84..0c50b9ba9dc52cc3cbf422dff7a4cc4bb8627b99 100644 --- a/src/main.go +++ b/src/main.go @@ -45,8 +45,11 @@ func server() error { //注册环境变量 func initEnv() { - if len(os.Getenv("REDIS_CONNECTION")) > 0 { - *redisUrl = os.Getenv("REDIS_CONNECTION") + if len(os.Getenv("AWE_REDIS_CONNECTION")) > 0 { + *redisUrl = os.Getenv("AWE_REDIS_CONNECTION") + } + if len(os.Getenv("DB_URL")) > 0 { + *dbURL = os.Getenv("DB_URL") } } diff --git a/src/service/field.go b/src/service/field.go index a4480cf134828b872a9a0c1bd61a804c3014400a..b6a5cff90ace652b91fcebef2c3bad15efe95322 100644 --- a/src/service/field.go +++ b/src/service/field.go @@ -198,6 +198,8 @@ LOCK TABLE service IN SHARE ROW EXCLUSIVE MODE; fmt.Println("error******service、service_apply更新失败:" + err.Error()) return } + session.Commit() + session.Begin() sql := fmt.Sprintf(` LOCK TABLE service_daliy_count IN SHARE ROW EXCLUSIVE MODE; INSERT INTO service_daliy_count ( service_id,date,count) VALUES @@ -210,6 +212,8 @@ UPDATE SET count=(service_daliy_count.count+1); session.Rollback() return } + session.Commit() + session.Begin() sql3 := fmt.Sprintf(` LOCK TABLE service_count_person IN SHARE ROW EXCLUSIVE MODE; INSERT INTO service_count_person ( user_id,date,count) VALUES @@ -223,6 +227,7 @@ UPDATE SET count=(service_count_person.count+1); return } session.Commit() + fmt.Println("CallCounts执行完成@@@!!!!!") //查询service_daliy_count 表有更新没有插入 return }