golang十大主流web框架

追梦人在路上不断追寻 · · 13780 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Gin Web Framework

Gin是为速度而生的框架,相比较其它框架,它的速度是最快的,与此同时,它还提供了中间件功能,我们可以轻松集成权限验证,记录压缩等功能。

Gin框架对于开发api接口非常适合,它提供了丰富的渲染机制,同时也可以作为web后端处理应用。同时它也是支持扩展的,已经有很多第三方扩展可以直接拿来使用。

盘点十大主流go web框架

Revel

我们知道作为编译型语言,每次修改都需要重新编译对我们开发非常的不友好,庆幸地是,Revel提供了热加载机制,只要我们修改了源代码,它就会自动重新编译,非常方便我们开发测试。

盘点十大主流go web框架

Revel为开发者提供了一整套web开发工具,从路由,session会话到缓存,测试,可以说我们常用的功能Revel都能为我们提供帮助。

Revel提供了方便的控制流,于中间件我们可以方便的替换成我们自己想要的功能。

Echo Framework

echo 是一款非常迷你的框架,然而虽然迷你,但是功能一点都不弱,同时他还支持http2协议。

盘点十大主流go web框架

同时它还集成了TlS,也就是我们可以自动生成https认证,这对于现在的网站开发非常实用。

智能路由和丰富的插件机制是它的一大特点。

Beego

作为国人开发的一款框架,它的中文文档相当丰富,同时它的社区也非常丰富。

国内很多大企业都在使用beego框架,可以说它的稳定性还是很好的。

Beego是一款MVC框架,提供了Restful功能,同时热编译、自动化测试代码以及自动化打包部署都是它受到人们追捧的特点。

盘点十大主流go web框架

beego提供了丰富的监听机制,可以方便我们进行性能分析,同时它的模块化使得代码非常简洁,方便我们进行个性化扩展。

Buffao

Buffao是一款借鉴rails设计的框架,如果你熟悉ruby,那么你可以很快的掌握这款框架。

这款框架的很多功能都是从其它开源系统借鉴的,它的路由采用的是gorilla,它的模板采用plush,作为现代化的web框架,buffao也集成了命令行开发工具,我们可以使用命令行快速构建我们的框架。

buffao提供了pop ORM框架,非常方便我们操作数据库。同时Grift的集成也方便我们进行任务的构建和定时器的编写。

Martini

作为很多框架的鼻祖,它的设计是优雅的,Gin就借鉴了它开发的。

martini是精简的,它没有集成orm等框架,我们使用它的时候需要配合其它组件才能发挥更强大的特性。

martini是采用依赖注入设计思想的框架,所有其它组件可以通过依赖注入到框架中,可以是虽然它本身功能少,但是通过集成其它组件,它能发挥出强大的框架特效。

Goji

这是一款支持多路复用的http框架,也就是它在处理高并发的时候,有着高效性。

Goji的特性很少,但是它提供了一组标准接口。Goji分发了几个子包,以提供一些接口的标准生产就绪实现,但是也鼓励用户自己实现接口,尤其是在他们的需求不寻常的情况下。

可以说如果你希望自己代码足够精简的化,那么goji是你的一个选择。

go-rest

这是一款专门开发api的框架,如果你的项目仅仅是为了写api接口,那么它是一个不错的选择,他足够的小,整个主要代码文件就两个。

如果你的应用不复杂,需要快速构建的化,那么你可以尝试使用它来加快你的开发。

Circuit

分布式go框架,使用它可以轻松构建分布式应用,对于大型项目来说非常适合,缺点是文档过少,还有一些坑需要踩才能更好的使用。

macaron

提供了子网址的强大路由,可以嵌套多组路由器,提供热加载,修改模板就会立刻在页面修改,采用模块化设计,可以非常方便替换组件,采用依赖注入加载组件,非常适合现代化工程项目,代码松耦合,适合开发大型团队项目。

盘点十大主流go web框架

有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:追梦人在路上不断追寻

查看原文:golang十大主流web框架

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

13780 次点击  
加入收藏 微博
5 回复  |  直到 2020-08-06 11:54:36
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传