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

updated for current versions #71

Closed cobomi closed 7 years ago

cobomi commented 7 years ago

Tango disabled due to failed tests

ole108 commented 7 years ago

Please accept this (and similar) pull requests. Otherwise this project looks like abandoned. And its really nice to have a comparison of all/most important HTTP routers.

julienschmidt commented 7 years ago

Sorry, this project certainly hasn't my highest priority right now.

The benchmark itself certainly needs an update too, since some developers started to fool this benchmark (and themselves) by using simple hash maps for "caching". Of course this works great in a benchmark where the same URL is requested 10k times, but in reality a hash map would introduce a dangerous hot path and would perform magnitudes worse.

cobomi commented 7 years ago

I would argue that keeping it working is more important than a update as it provide new gophers with a ordered list of routers to dig into. Also it helps establish a baseline when writing a new router.

I think/hope that anybody who uses a router digs a bit into the source code and if it chooses a hash based approach is because it fits best (probably never as radix trees should be just as fast + other benefits)

P.S This reminded me to publish my router. Thanks Julien for httprouter (and the great inspiration it provided)