http url router设计

看了go web领域的httprouter实现借用了radix tree这个树,据介绍路由效率很高,而且还很省内存。近来在看nodejs的原始API,然后注意到nodejs推荐给我一个router,名字就叫router。但是感觉这个router效率并不高,而且如果没有用c扩展,那么内存也会消耗很多。基于此想法,我觉得在我能力之内(就算是之外也去尝试一下),利用c写扩展,js做最后一层的模式匹配,来实现高性能的router。其中最关键的点就是用c去实现这个扩展,还有js层的数据加工。想到哪写到哪,突发奇想嘛!记录一下具体想法:
比如说下面的一个url:

/api/aricles/<id: int>/author //原始数据
/api/articles/?/author //经过处理后的输入数据,?用来占位

对输入数据处理,如果满足这个模式,那么返回ok,让js层做最后的模式匹配取出占位符处的数据,再利用runtime确定类型。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容