From 9aef7dda4b949823294d273adf9b082c0a9292f4 Mon Sep 17 00:00:00 2001 From: yedf2 <120050102@qq.com> Date: Sat, 25 Dec 2021 13:43:27 +0800 Subject: [PATCH] before redis test --- bench/main.go | 10 ++++++---- bench/run-dtm.sh | 2 ++ bench/{ => svr}/http.go | 14 ++++++++++++-- dtmsvr/storage/sql/sql.go | 4 ++-- dtmsvr/utils.go | 5 ++--- go.mod | 2 ++ go.sum | 7 +++++++ 7 files changed, 33 insertions(+), 11 deletions(-) rename bench/{ => svr}/http.go (93%) diff --git a/bench/main.go b/bench/main.go index 9bff1b0..56542c8 100644 --- a/bench/main.go +++ b/bench/main.go @@ -4,6 +4,7 @@ import ( "fmt" "os" + "github.com/dtm-labs/dtm/bench/svr" "github.com/dtm-labs/dtm/common" "github.com/dtm-labs/dtm/dtmcli" "github.com/dtm-labs/dtm/dtmcli/logger" @@ -23,17 +24,18 @@ func main() { fmt.Printf(hint) return } - logger.Debugf("starting dtm....") + logger.Infof("starting dtm....") if os.Args[1] == "http" { fmt.Println("start bench server") common.MustLoadConfig() + logger.InitLog(common.Config.LogLevel) dtmcli.SetCurrentDBType(common.Config.ExamplesDB.Driver) registry.WaitStoreUp() - dtmsvr.PopulateDB(true) - examples.PopulateDB(true) + dtmsvr.PopulateDB(false) + examples.PopulateDB(false) dtmsvr.StartSvr() // 启动dtmsvr的api服务 go dtmsvr.CronExpiredTrans(-1) // 启动dtmsvr的定时过期查询 - StartSvr() + svr.StartSvr() select {} } else { fmt.Printf(hint) diff --git a/bench/run-dtm.sh b/bench/run-dtm.sh index 5bc8e39..0566f25 100755 --- a/bench/run-dtm.sh +++ b/bench/run-dtm.sh @@ -17,3 +17,5 @@ curl "http://127.0.0.1:8083/api/busi_bench/reloadData?m=raw_empty" && ab -t $TIM # curl "http://127.0.0.1:8083/api/busi_bench/reloadData?m=raw_tx" && curl "http://127.0.0.1:8083/api/busi_bench/bench" # curl "http://127.0.0.1:8083/api/busi_bench/reloadData?m=dtm_tx" && curl "http://127.0.0.1:8083/api/busi_bench/bench" # curl "http://127.0.0.1:8083/api/busi_bench/reloadData?m=dtm_barrier" && curl "http://127.0.0.1:8083/api/busi_bench/bench" + +ab -t $TIME -c $CONCURRENT "http://127.0.0.1:8083/api/busi_bench/benchEmptyUrl" \ No newline at end of file diff --git a/bench/http.go b/bench/svr/http.go similarity index 93% rename from bench/http.go rename to bench/svr/http.go index 4682271..de03f07 100644 --- a/bench/http.go +++ b/bench/svr/http.go @@ -4,7 +4,7 @@ * license that can be found in the LICENSE file. */ -package main +package svr import ( "database/sql" @@ -20,6 +20,7 @@ import ( "github.com/dtm-labs/dtm/dtmsvr" "github.com/dtm-labs/dtm/examples" "github.com/gin-gonic/gin" + "github.com/lithammer/shortuuid" ) // launch command:go run app/main.go qs @@ -32,7 +33,7 @@ const total = 200000 var benchBusi = fmt.Sprintf("http://localhost:%d%s", benchPort, benchAPI) func sdbGet() *sql.DB { - db, err := dtmimp.PooledDB(common.Config.Store.GetDBConf()) + db, err := dtmimp.PooledDB(common.Config.ExamplesDB) logger.FatalIfError(err) return db } @@ -167,4 +168,13 @@ func benchAddRoute(app *gin.Engine) { } return nil, nil })) + app.Any(benchAPI+"/benchEmptyUrl", common.WrapHandler(func(c *gin.Context) (interface{}, error) { + gid := shortuuid.New() + req := gin.H{} + saga := dtmcli.NewSaga(examples.DtmHttpServer, gid). + Add("", "", req). + Add("", "", req) + err := saga.Submit() + return nil, err + })) } diff --git a/dtmsvr/storage/sql/sql.go b/dtmsvr/storage/sql/sql.go index 3b246ba..fd3fe56 100644 --- a/dtmsvr/storage/sql/sql.go +++ b/dtmsvr/storage/sql/sql.go @@ -5,7 +5,7 @@ import ( "math" "time" - "github.com/google/uuid" + "github.com/lithammer/shortuuid/v3" "gorm.io/gorm" "gorm.io/gorm/clause" @@ -126,7 +126,7 @@ func (s *SqlStore) LockOneGlobalTrans(expireIn time.Duration) *storage.TransGlob } expire := int(expireIn / time.Second) whereTime := fmt.Sprintf("next_cron_time < %s", getTime(expire)) - owner := uuid.NewString() + owner := shortuuid.New() global := &storage.TransGlobalStore{} dbr := db.Must().Model(global). Where(whereTime + "and status in ('prepared', 'aborting', 'submitted')"). diff --git a/dtmsvr/utils.go b/dtmsvr/utils.go index b711d40..3b296cc 100644 --- a/dtmsvr/utils.go +++ b/dtmsvr/utils.go @@ -10,12 +10,11 @@ import ( "fmt" "time" - "github.com/google/uuid" - "github.com/dtm-labs/dtm/common" "github.com/dtm-labs/dtm/dtmcli/dtmimp" "github.com/dtm-labs/dtm/dtmsvr/storage" "github.com/dtm-labs/dtm/dtmsvr/storage/registry" + "github.com/lithammer/shortuuid/v3" ) type branchStatus struct { @@ -38,7 +37,7 @@ var TransProcessedTestChan chan string = nil // GenGid generate gid, use uuid func GenGid() string { - return uuid.NewString() + return shortuuid.New() } // GetTransGlobal construct trans from db diff --git a/go.mod b/go.mod index fdd8107..a8dfe82 100644 --- a/go.mod +++ b/go.mod @@ -15,6 +15,8 @@ require ( github.com/google/uuid v1.3.0 github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 github.com/lib/pq v1.10.3 + github.com/lithammer/shortuuid v2.0.3+incompatible + github.com/lithammer/shortuuid/v3 v3.0.7 github.com/onsi/gomega v1.16.0 github.com/polarismesh/grpc-go-polaris v0.0.0-20211128162137-1a59cd7b5733 // indirect github.com/prometheus/client_golang v1.11.0 diff --git a/go.sum b/go.sum index 1aa3c42..3ec84e4 100644 --- a/go.sum +++ b/go.sum @@ -241,6 +241,7 @@ github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hf github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= @@ -369,6 +370,11 @@ github.com/lib/pq v1.2.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.10.2/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lib/pq v1.10.3 h1:v9QZf2Sn6AmjXtQeFpdoq/eaNtYP6IN+7lcrygsIAtg= github.com/lib/pq v1.10.3/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/lithammer/shortuuid v1.0.0 h1:kdcbvjGVEgqeVeDIRtnANOi/F6ftbKrtbxY+cjQmK1Q= +github.com/lithammer/shortuuid v2.0.3+incompatible h1:ao1r3cQ9AUX+c6dZXwbCM/ELGf10EoO4SyqqxBXTyHc= +github.com/lithammer/shortuuid v2.0.3+incompatible/go.mod h1:FR74pbAuElzOUuenUHTK2Tciko1/vKuIKS9dSkDrA4w= +github.com/lithammer/shortuuid/v3 v3.0.7 h1:trX0KTHy4Pbwo/6ia8fscyHoGA+mf1jWbPJVuvyJQQ8= +github.com/lithammer/shortuuid/v3 v3.0.7/go.mod h1:vMk8ke37EmiewwolSO1NLW8vP4ZaKlRuDIi8tWWmAts= github.com/logrusorgru/aurora v2.0.3+incompatible/go.mod h1:7rIyQOR62GCctdiQpZ/zOJlFyk6y+94wXzv6RNZgaR4= github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= @@ -467,6 +473,7 @@ github.com/rs/zerolog v1.13.0/go.mod h1:YbFCdg8HfsridGWAh22vktObvhZbQsZXe4/zB0OK github.com/rs/zerolog v1.15.0/go.mod h1:xYTKnLHcpfU2225ny5qZjxnj9NvkumZYjJHlAThCjNc= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/satori/go.uuid v1.2.0 h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4= github.com/shopspring/decimal v1.2.0 h1:abSATXmQEYyShuxI4/vyW3tV1MrKAJzCZ/0zLUXYbsQ=