golang Web框架对比
web框架的主流,是采用轻量级的中间件式框架,把网站变成只有api的一个个小服务,其他都扔到cdn之类的地方处理。
这种方式,开发快速、拼装能力强,要什么就加什么,不要的就不加,就像是乐高玩具,大受欢迎。
问题在于,这种框架有一堆,到底该选哪个。
Gin vs Echo
在golang中,这种杰出代表,有2个:gin 和 echo。
这两个框架,在同类中,路由性能最高,超出其他框架一大截。google了一大堆英文站,也没有找到这两个框架的比较。于是,在我们实际使用后,提供个比较。
先说结论:
如果你代表企业,最好选择gin,无痛开发。
如果是个人,开发个轻量服务,哪怕echo有点小问题,你也觉得没啥,那么,就用echo。
下面是比较:
框架成熟度
gin完胜。
gin拥有详尽的出错信息,极为方便调试。
这非常关键。团队项目,这个更加重要。
echo在这方面,就略微逊色。使用框架的第一天,就遇到了明明路由语法写错了,却不报错、不给结果,也没有任何提示的情况。
路由性能
gin微弱小胜
gin的卖点,是所有web框架中,路由性能最好。
echo的卖点,是它的路由性能,比gin还好10%。
国外实际测试结果是:echo只在空路由时,性能比gin好10%。而常用的各种带参数路由,echo其实要输给gin约5-10%。
当然你也可以考虑beego毕竟国人开发的,中文文档比较全面