Swap out the naive "try all the routes in order" router with a "compile a trie down to bytecode" router. It's a ton faster, while providing all the same semantics. See the documentation at the top of web/fast_router.go for more.