Beego架构简介

Beego是什么?

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

 

Beego的架构

            Beego的架构图如下所示:



   

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

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


Beego的代码调用流程图



        

Beego的执行逻辑


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


Beego的工程结构


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




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



Beego MVC应用程序


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


     除了.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 程序

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

    bee run

 

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





欢迎关注我的微信公众号


weixing

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