in dubbo-go-client/main.go [59:91]
func main() {
flag.IntVar(&tps, "c", defaultTps, "TPS")
flag.StringVar(&duration, "d", defaultDuration, "Test duration. It should be a string representing a time, like \"1h\", \"30m\", etc")
flag.Int64Var(&fibonacciN, "n", defaultFibonacciN, "Parameter for the call to fibonacci")
flag.Parse()
provider := &Provider{}
config.SetConsumerService(provider)
if err := config.Load(); err != nil {
panic(err)
}
ctx := context.TODO()
doInvoke := func(uid int) {
if result, err := fibonacci(ctx, provider); err != nil {
handleErr(err)
} else {
fmt.Printf("result: %d\n", result)
}
}
tester := testerpkg.NewStressTester()
tester.
SetTPS(tps).
SetDuration(duration).
SetTestFn(doInvoke).
Run()
fmt.Printf("Sent request num: %d\n", tester.GetTransactionNum())
fmt.Printf("TPS: %.2f\n", tester.GetTPS())
fmt.Printf("RT: %.2fs\n", tester.GetAverageRTSeconds())
}