Go語(yǔ)言由Google公司開(kāi)發(fā),并于2009年開(kāi)源,相比Java/Python/C等語(yǔ)言,Go尤其擅長(zhǎng)并發(fā)編程,性能堪比C語(yǔ)言,開(kāi)發(fā)效率肩比Python,被譽(yù)為“21世紀(jì)的C語(yǔ)言”。
成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)萬(wàn)寧,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):18982081108
Go語(yǔ)言在云計(jì)算、大數(shù)據(jù)、微服務(wù)、高并發(fā)領(lǐng)域應(yīng)用應(yīng)用非常廣泛。BAT大廠正在把Go作為新項(xiàng)目開(kāi)發(fā)的首選語(yǔ)言。
Go語(yǔ)言能干什么?
1、服務(wù)端開(kāi)發(fā):以前你使用C或者C++做的那些事情,用Go來(lái)做很合適,例如日志處理、文件系統(tǒng)、監(jiān)控系統(tǒng)等;
2、DevOps:運(yùn)維生態(tài)中的Docker、K8s、prometheus、grafana、open-falcon等都是使用Go語(yǔ)言開(kāi)發(fā);
3、網(wǎng)絡(luò)編程:大量?jī)?yōu)秀的Web框架如Echo、Gin、Iris、beego等,而且Go內(nèi)置的 net/http包十分的優(yōu)秀;
4、Paas云平臺(tái)領(lǐng)域:Kubernetes和Docker Swarm等;
5、分布式存儲(chǔ)領(lǐng)域:etcd、Groupcache、TiDB、Cockroachdb、Influxdb等;
6、區(qū)塊鏈領(lǐng)域:區(qū)塊鏈里面有兩個(gè)明星項(xiàng)目以太坊和fabric都使用Go語(yǔ)言;
7、容器虛擬化:大名鼎鼎的Docker就是使用Go語(yǔ)言實(shí)現(xiàn)的;
8、爬蟲及大數(shù)據(jù):Go語(yǔ)言天生支持并發(fā),所以十分適合編寫分布式爬蟲及大數(shù)據(jù)處理。
go語(yǔ)言web框架beego安裝(go mod方式)_不忘初心,方得始終-CSDN博客
重要:將bee命令放到GOROOT/bin目錄下,這步很關(guān)鍵
cp bee /usr/local/go/bin/
注:或者可以將GOPATH/bin設(shè)置為環(huán)境變量
echo ’export PATH=" PATH"' ~/.bashrc
source ~/.bashrc
router路由下方法名要大寫,訪問(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)
Go作為近兩年迅速流行起來(lái)的編程語(yǔ)言始終致力于使事情簡(jiǎn)單化。它并未引入很多新概念,而是聚焦于打造一門簡(jiǎn)單的語(yǔ)言,讓開(kāi)發(fā)者使用起來(lái)感覺(jué)異??焖偾液?jiǎn)單。相信有意向深入學(xué)習(xí)Go語(yǔ)言的小伙伴都在研究Go的開(kāi)源項(xiàng)目,今天我就把自己覺(jué)得不錯(cuò)的6個(gè)Go開(kāi)源項(xiàng)目推薦給大家,希望大家能獲得收獲和成長(zhǎng)。
推薦一:kubernetes 【Star:44418】
Kubernetes基于Docker,其目的是讓用戶通過(guò)Kubernetes集群來(lái)進(jìn)行云端容器集群的管理,而無(wú)需用戶進(jìn)行復(fù)雜的設(shè)置工作。系統(tǒng)會(huì)自動(dòng)選取合適的工作節(jié)點(diǎn)來(lái)執(zhí)行具體的容器集群調(diào)度處理工作。
推薦二:etcd 【Star:21408】
etcd是由CoreOS開(kāi)發(fā)并維護(hù)鍵值存儲(chǔ)系統(tǒng),它使用Go語(yǔ)言編寫,并通過(guò)Raft一致性算法處理日志復(fù)制以保證強(qiáng)一致性。目前,Google的容器集群管理系統(tǒng)Kubernetes、開(kāi)源PaaS平臺(tái)Cloud Foundry和CoreOS的Fleet都廣泛使用了etcd。
推薦三:deis 【Star:6093】
Deis是一個(gè)基于Docker和CoreOS的開(kāi)源PaaS平臺(tái),旨在讓部屬和管理服務(wù)器上的應(yīng)用變得輕松容易。它可以運(yùn)行在AWS、GCE以及Openstack平臺(tái)下。
推薦四:flynn 【Star:6936】
Flynn是一個(gè)使用Go語(yǔ)言編寫的開(kāi)源PaaS平臺(tái),可自動(dòng)構(gòu)建部署任何應(yīng)用到Docker容器集群上運(yùn)行。Flynn項(xiàng)目受到Y(jié) Combinator的支持,目前仍在開(kāi)發(fā)中,被稱為是下一代的開(kāi)源PaaS平臺(tái)。
推薦五:lime 【Star:13775】
相對(duì)上面的幾款Go語(yǔ)言在云端和服務(wù)器端之外,Lime則顯得比較特殊。Lime,則是一款用Go語(yǔ)言寫的桌面編輯器程序,被看做是著名編輯器Sublime Text的開(kāi)源實(shí)現(xiàn)。
六:revel 【Star:10508】
Revel是一個(gè)高生產(chǎn)力的Go語(yǔ)言Web框架。Revel框架支持熱編譯,當(dāng)編輯、保存和刷新源碼時(shí),Revel會(huì)自動(dòng)編譯代碼和模板;全棧特性,支持路由、參數(shù)解析、緩存、測(cè)試、國(guó)際化等功能。