Beego Framework 一个使用 Go 的思维来帮助您构建并开发 Go 应用程序的开源框。 beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。
下载安装
- go get github.com/astaxie/beego
创建文件 hello.go
- package main
-
- import "github.com/astaxie/beego"
-
- func main() {
- beego.Run()
- }
编译运行
- go build -o hello hello.go
- ./hello
浏览效果
打开浏览器并访问 http://localhost:8080
恭喜!您已经成功构建了第一个 beego 项目。
RESTful 支持、MVC 模型,可以使用 bee 工具快速地开发应用,包括监控代码修改进行热编译、自动化测试代码以及自动化打包部署。
支持智能路由、智能监控,可以监控 QPS、内存消耗、CPU 使用,以及 goroutine 的运行状况,让您的线上应用尽在掌握。
beego 内置了强大的模块,包括 Session、缓存操作、日志记录、配置解析、性能监控、上下文操作、ORM 模块、请求模拟等强大的模块,足以支撑你任何的应用。
beego 采用了 Go 原生的 http 包来处理请求,goroutine 的并发效率足以应付大流量的 Web 应用和 API 应用,目前已经应用于大量高并发的产品中。
一般的 beego 项目的目录如下所示:
- ├── conf
- │ └── app.conf
- ├── controllers
- │ ├── admin
- │ └── default.go
- ├── main.go
- ├── models
- │ └── models.go
- ├── static
- │ ├── css
- │ ├── ico
- │ ├── img
- │ └── js
- └── views
- ├── admin
- └── index.tpl
从上面的目录结构我们可以看出来 M(models 目录)、V(views 目录)和 C(controllers 目录)的结构, main.go 是入口文件。