WANTED
发布于 13 小时前 作者 yyrdl 117 次浏览 来自 分享

Wanted

寻求Go语言大神改善一个express (node.js世界著名的web框架)风格的web framework---------Gbeta[左为项目链接,看官可以点进去看一下:)]

碎碎念

在下大四党一枚,正在做毕业设计,设计的一部分采用了Go语言,需要一个实现了Restful又可以方便添加路由的轻量级的web framework.非常喜欢express的风格 看了一下Martini,发现已经不维护了,于是自己花了时间写了一个。经过多次优化,性能提升了很多,目前在性能上是优于Martini的,这个有Benchmark为证。但是看了一下其他的,比如httpRouter,Goji,在性能上还是有差距。不清楚是不是因为要功能而牺牲了性能,还是最初的设计就有问题。所以特来程序猿的社区,寻找大神帮助。

主要策略

使用了trie树,每个节点上放了一个大小为12的指针数组,使用子路径的第一个字符的ASCII码值模10作为索引。索引10 放的是特殊路径,如path parameter 或者正则式 , 11放的是空路径

在建路由树阶段就确定下每一个http request handler需要执行的中间件

回到顶部