Beego vs Gin的差异
MVC
- Beego 支持 MVC
- Gin 不支持完整的 MVC
Beego MVC
- Beego是典型的MVC框架
- M:Model,即Beego ORM,对象关系映射,以及对象的持久化
- 特性
- 支持Go的所有类型存储
- 更简单的CURD风格
- 完整实现健壮稳定的ORM
- 支持的数据库
- MySQL
- PostgreSQL
- Sqlite3
- 等等
- V:View,体现为模版,Beego通过处理模版和渲染模版展示视图
- C:Controller,体现为各种功能
- 特性
- 路由功能
- 控制器函数
- CSRF(Cross-Site request forgery)过滤器
- Session
- 错误处理 & 日志处理
Gin不支持完整的MVC
- 支持的MVC有
- HTML渲染和模版
- 静态文件服务
- 路由
- ...
路由
Session
- Beego支持Session
- Gin不支持Session,需要安装另外的包
github.com/astaxie/session
适用场景
Beego在业务方面较Gin支持的更多
- 在业务更加复杂的项目中,适用Beego
- 在需要快速开发的项目中,适用Beego
- 在1.0项目中,适用Beego
Gin在性能方面较Beego更好
- 当某个接口的性能遭到较大挑战的时候,考虑使用Gin重写接口
- 如果项目的规模不大,业务相对简单,适用Gin