julienschmidt / go-http-routing-benchmark

Go HTTP request router and web framework benchmark
BSD 3-Clause "New" or "Revised" License
1.65k stars 238 forks source link

Add a new router goblin #97

Closed bmf-san closed 2 years ago

bmf-san commented 3 years ago

Description

I added goblin which I developing.

If you don't mind, I would be grateful if you could add goblin as well.

Results of benchmark tests in my local environment ``` #GithubAPI Routes: 203 Goblin: 80864 Bytes #GPlusAPI Routes: 13 Goblin: 7856 Bytes #ParseAPI Routes: 26 Goblin: 8688 Bytes #Static Routes: 157 Goblin: 34488 Bytes goos: darwin goarch: amd64 pkg: github.com/julienschmidt/go-http-routing-benchmark cpu: Intel(R) Core(TM) i5-8210Y CPU @ 1.60GHz BenchmarkGoblin_Param 738289 1964 ns/op 128 B/op 4 allocs/op BenchmarkGoblin_Param5 754988 1920 ns/op 368 B/op 6 allocs/op BenchmarkGoblin_Param20 56145 23260 ns/op 3168 B/op 58 allocs/op BenchmarkGoblinWeb_ParamWrite 304082 4610 ns/op 648 B/op 11 allocs/op BenchmarkGoblin_GithubStatic 1156518 2745 ns/op 128 B/op 4 allocs/op BenchmarkGoblin_GithubParam 125570 9985 ns/op 816 B/op 15 allocs/op BenchmarkGoblin_GithubAll 2232 622376 ns/op 49424 B/op 1018 allocs/op BenchmarkGoblin_GPlusStatic 1000000 1298 ns/op 80 B/op 3 allocs/op BenchmarkGoblin_GPlusParam 417717 2893 ns/op 664 B/op 11 allocs/op BenchmarkGoblin_GPlus2Params 274990 4551 ns/op 824 B/op 15 allocs/op BenchmarkGoblin_GPlusAll 95580 14536 ns/op 2208 B/op 57 allocs/op BenchmarkGoblin_ParseStatic 1651083 707.0 ns/op 128 B/op 4 allocs/op BenchmarkGoblin_ParseParam 413840 2876 ns/op 728 B/op 12 allocs/op BenchmarkGoblin_Parse2Params 260120 4119 ns/op 808 B/op 15 allocs/op BenchmarkGoblin_ParseAll 54518 21692 ns/op 4656 B/op 120 allocs/op BenchmarkGoblin_StaticAll 26689 46104 ns/op 0 B/op 0 allocs/op PASS ok github.com/julienschmidt/go-http-routing-benchmark 37.270s ```