Beego架构简介

Beego是什么?

     Beego是一个能够快速开发Go应用程序的Http框架。它可以用来迅速地开发API、网络App和后端服务。同时,它也可以作为RESTful 框架。其设计灵感主要来自Python和Rails流行的框架,借鉴了Python语言开发的框架Tornado和Flask以及Ruby开发的web框架Sinatra。

 

Beego的架构

            Beego的架构图如下所示:

Beego架构简介_第1张图片


   

       从上面的架构图可知,Beego是由8个独立的模块组成,这些模块彼此是松散的关系。模块化编程是Beego架构的设计核心之一。这样的设计,便于你使用任何自定义或者第三方的模块而不许用采用Beego's 自己的Http逻辑。比如,你可以使用cache模块处理你的缓存业务逻辑,日志模块用来记录应用系统的日志逻辑,conf模块用来定义个性化的文件处理格式。你可以不仅仅在Beego中使用这些模块,而且可以在其它应用程序中使用,比如socket游戏系统。

     如果你懂得Lego艺术内涵,你应该知道所有伟大的模型都是由许多小片段组成的。在这种哲学的启发下,Beego做到了模块的最小化,精致化。


Beego的代码调用流程图

Beego架构简介_第2张图片


        

Beego的执行逻辑


     Beego采用模块化设计的思想实现了一个经典的MVC架构。下面是它的框架执行逻辑。

Beego架构简介_第3张图片

Beego的工程结构


      一个Beego应用项目的工程结构可以按照下面规范定义:




    你可以看到MVC(M:models, V: views, C: controllers)目录结构。main.go是程序的入口文件。



Beego MVC应用程序


设置你的GOPAHT路径,包括BOBIN,形成下面的目录结构:

Beego架构简介_第4张图片

     除了.git目录外,你需要定义src、pkg、bin三个目录,并设置(windows环境为例)环境变量。


GOPATH= {GolangBestPractice}

GOBIN=%GOPATH%/bin

PATH=%GOPATH%;%GOBIN%


     接下来,下载Beego包,会在bin目录下形成一个文件bee.exe. 执行命令如下所示:


go
get github.com/beego/bee

   

  NOTES:bee命令详情如下所示:

bee is a tool for managing Beego framework.Usage:

    bee command [arguments]The commands are:newCreate a Beego application
    run         run the app and start a Web server for development
    pack        Compress a Beego project into a single file
    api         create an API Beego application
    bale        packs non-Go files to Go source files
    version     show the bee,BeegoandGo version
    generate    source code generator
    migrate     run database migrations


        使用new 命令创建MVC应用系统,进入src目录下,输入下面命令。


bee  new beeworker

 

       创建成功后,生产下面的目录结构。

      Beego架构简介_第5张图片

运行Beego 程序

       进入beework目录下,输入下面命令。

    bee run

 

      浏览器打开目标url地址,得到下面的效果图。

Beego架构简介_第6张图片





欢迎关注我的微信公众号


Beego架构简介_第7张图片

你可能感兴趣的:(Cloud,Go)