go語(yǔ)言web框架beego安裝(go mod方式)_不忘初心,方得始終-CSDN博客
我們提供的服務(wù)有:成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、孫吳ssl等。為近1000家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的孫吳網(wǎng)站制作公司
重要:將bee命令放到GOROOT/bin目錄下,這步很關(guān)鍵
cp bee /usr/local/go/bin/
注:或者可以將GOPATH/bin設(shè)置為環(huán)境變量
echo ’export PATH=" PATH"' ~/.bashrc
source ~/.bashrc
router路由下方法名要大寫(xiě),訪問(wèn)權(quán)限
wq保存
生效環(huán)境變量: source /etc/profile
go build -o abc.exe可指定編譯后的文件名
Golang常用環(huán)境變量說(shuō)明與設(shè)置詳解
環(huán)境變量GOBIN表示我們開(kāi)發(fā)程序編譯后二進(jìn)制命令的安裝目錄。
當(dāng)我們使用go install命令編譯和打包應(yīng)用程序時(shí),該命令會(huì)將編譯后二進(jìn)制程序打包GOBIN目錄,一般我們將GOBIN設(shè)置為GOPATH/bin目錄。
export GOBIN=$GOPATH/bin
Go get包管理mod
windows下默認(rèn)項(xiàng)目路徑在go安裝目錄的src下(beego)
不會(huì)成為web主流
go是設(shè)計(jì)初衷來(lái)做系統(tǒng)應(yīng)用和取代C++的....
目前主要用傳統(tǒng)編譯型語(yǔ)言編譯成機(jī)器碼的形式...
和web開(kāi)發(fā)的跨平臺(tái)標(biāo)準(zhǔn)化等特性有距離...
會(huì)成為很方便系統(tǒng)應(yīng)用開(kāi)發(fā)、客戶端開(kāi)發(fā)的語(yǔ)言...
第一個(gè):Beego框架
Beego框架是astaxie的GOWeb開(kāi)發(fā)的開(kāi)源框架。Beego框架最大的特點(diǎn)是由八個(gè)大的基礎(chǔ)模塊組成,八大基礎(chǔ)模塊的特點(diǎn)是可以根據(jù)自己的需要進(jìn)行引入,模塊相互獨(dú)立,模塊之間耦合性低。
相應(yīng)的Beego的缺點(diǎn)就是全部使用時(shí)比較臃腫,通過(guò)bee工具來(lái)構(gòu)建項(xiàng)目時(shí),直接生成項(xiàng)目目錄和耦合關(guān)系,從而會(huì)導(dǎo)致在項(xiàng)目開(kāi)發(fā)過(guò)程中受制性較大。
第二個(gè):Gin框架
Gin是一個(gè)GOlang的微框架,封裝比較優(yōu)雅,API友好,源碼注釋比較明確,已經(jīng)發(fā)布了1.0版本;具有快速靈活、容錯(cuò)方便等特點(diǎn),其實(shí)對(duì)于golang而言,web框架的依賴遠(yuǎn)比Python、Java更小。
目前在很多使用golang的中小型公司中進(jìn)行業(yè)務(wù)開(kāi)發(fā),使用Gin框架的很多,大家如果想使用golang進(jìn)行熟練Web開(kāi)發(fā),可以多關(guān)注一下這個(gè)框架。
第三個(gè):Iris框架
Iris框架在其官方網(wǎng)站上被描述為GO開(kāi)發(fā)中最快的Web框架,并給出了多框架和多語(yǔ)言之前的性能對(duì)比。目前在github上,Iris框架已經(jīng)收獲了14433個(gè)star和1493個(gè)fork,可見(jiàn)是非常受歡迎的。
在實(shí)際開(kāi)發(fā)中,Iris框架與Gin框架的學(xué)習(xí)曲線幾乎相同,所以掌握了Gin就可以輕松掌握Iris框架。
第四個(gè):Echo框架
也是golang的微型Web框架,其具備快速HTTP路由器、支持?jǐn)U展中間件,同時(shí)還支持靜態(tài)文件服務(wù)、Websocket以及支持制定綁定函數(shù),制定相應(yīng)渲染函數(shù),并允許使用任意的HTML模版引擎。
適合??蚣茏銐虺墒炝?A Survey of 5 Go Web Frameworks
小型項(xiàng)目你甚至不用框架,用net/http http - The Go Programming Language
常用庫(kù)也成熟了 Top - Go Search
golang的web后端即使不concurrent也比php,ruby,python快很多很多
golang里用concurrent真的非常方便,非常非常快,超大web項(xiàng)目golang scale成本低
如果你想,golang的部署可以比php更方便,使用go get和http.ServeAndListen()可以不用nginx和apache
對(duì)于文件改動(dòng)重新編譯其實(shí)并不是大問(wèn)題,看pilu/fresh · GitHub,其實(shí)你自己寫(xiě)shell腳本(也可以直接用go寫(xiě),因?yàn)樗旧砭褪窍到y(tǒng)語(yǔ)言)監(jiān)控文件系統(tǒng)改動(dòng)然后自動(dòng)重新build,即使是C/C++的項(xiàng)目這也不是大問(wèn)題,人們不用C/C++寫(xiě)web是因?yàn)樗鼈儾皇菍?xiě)web app的最佳選擇
golang寫(xiě)的代碼編譯通過(guò)后,要比scripting language魯棒,因?yàn)間o compiler強(qiáng)制一些最佳實(shí)踐
所以如果你熟悉go或者愿意投資時(shí)間,這是一種很值得用的語(yǔ)言,如果你不熟悉而且項(xiàng)目周期很緊,還是建議你用自己最熟悉的語(yǔ)言,學(xué)go本身需要花時(shí)間的。
我最近一個(gè)web項(xiàng)目是用Gorilla寫(xiě)的,也是邊學(xué)邊做 Gorilla, the golang web toolkit;這個(gè)Go by Example 挺有用。