這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
這裡僅介紹我見過的,覺得不錯的Golang優秀組件。算是個人筆記吧,只有介紹,沒有使用說明。
1.架構
Go的架構有很多很多,但至今還沒有一款能和Spring媲美的神級架構出現。所以大神都是自己直接寫,不用架構。這裡介紹我用過的2個架構gin和beego,前者路由速度快,後者功能全。但還是我前面講的那句話,兩個都不能算是神級架構,所以仁者見仁,智者見智吧。
github.com/gin-gonic/gin
github.com/astaxie/beego
2.WEB服務
caddy類似於Apache,Nginx,是一個高效能的HTTP/2和反向 Proxy伺服器,天然支援https。挺強。
github.com/mholt/caddy
3.資料庫操作
gorm或者beego的orm,但和前面的架構類似,用也可以,不用也可以。
github.com/jinzhu/gorm
4.包管理工具
類似於Maven。目前我只用過govendor,其它的還有godep、glide。但有個不好的地方就是被牆的還是被牆,得翻牆出去找。
github.com/kardianos/govendor
5.熱重啟
通過監聽syscall訊號量實現優雅重啟。
github.com/fvbock/endless
6.log記錄
github.com/Sirupsen/logrus
7.定時任務
github.com/robfig/cron
8.協助文檔產生工具
自己的應用編好之後,自動給你產生協助文檔,執行xxxx -h或者xxxx help顯示協助文檔
github.com/urfave/cli(以前叫github.com/codegangsta/cli)
9.設定檔讀取
github.com/spf13/viper
10.記憶體管理
支援Redis記憶體儲存
github.com/coocood/freecache
11.redis依賴
github.com/garyburd/redigo