Beispiel #1
0
func run(svc bench.Queue, topic string) { //brokers, topic string) {
	//batchs := []int{50, 100, 200, 350, 500}
	var delay_ns int64 = int64(*delay * 1e6)
	var input <-chan []byte
	rw, _ := bench.NewFileWriter(*workdir + "/rates.dat")
	dw, _ := bench.NewFileWriter(*workdir + "/duration.dat")
	switch *schema {
	case "":
		generator, _ := bench.NewFixedSizeStringGenerator(*size)
		input = generator.Generate()
	default:
		p := bench.NewParser()
		object, err := p.Parse(*schema)
		if err != nil {
			panic(err)
		}
		if *httpMethod == "GET" {
			input = object.KVGenerator("=", "&")
		} else {
			input = object.JSONGenerator()
		}
	}
	// testing put
	putRecord(svc, topic, input, rw.Output, dw.Output, *total, delay_ns)
	/*for _, batch := range batchs {
		// testing put batch
		putRecordBuffered(svc, data, total, batch)
		putRecordBatch(svc, data, total, batch)
	}*/
	rw.Close()
	dw.Close()
	log.Println("Finished benchs")
}
Beispiel #2
0
func main() {
	p := qbench.NewParser()
	object, err := p.Parse("main.yml")
	if err != nil {
		panic(err)
	}
	// generate some data
	for i := 0; i < 10; i++ {
		log.Println(i, ">", object.GetKV("=", "&"))
		log.Println(i, ">", object.GetJSON())

	}
}