Go語言誕生5周年!10大Go語言開源項目推薦

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。引用2014年11月,Golang官方部落格發布文章 ,以紀念Go語言發布5周年。文章稱,Go語言在雲端運算時代找到了位置,預言“2015年將是Go語言急劇發展之年”。
2014年11月,Golang官方部落格發布Go語言核心開發群組成員Andrew Gerrand文章 《Half a decade with Go》,以紀念Go語言發布5周年。Andrew Gerrand在文章中稱,Go語言在工業界向雲端運算轉型時代找到了自己的位置,目前一些重量級的雲端運算項目比如有名的Docker等都是用Go語言開發的,並預言“2015年將是Go語言急劇發展之年”(“ 2015 will be Go's biggest year yet.”)。



Go語言:制霸雲端運算時代
引用從國內Go語言發展和應用來看,七牛算是國內第一家選Go語言做服務端的公司。在前段時間,《技術人攻略》對七牛CEO許式偉所做的一篇深度採訪(採訪原文)中,許式偉對“為何早在2011年Go文法還沒完全穩定下來的情況下選擇Go作為儲存服務端的主體語言”給出自己的解釋。許式偉談到說:
編程哲學的重塑是Go語言獨樹一幟的根本原因,其它語言仍難以擺脫OOP或函數式編程的烙印,只有Go完全放棄了這些,對編程範式重新思考,對熱門的物件導向編程提供極度簡約但卻完備的支援。Go是互連網時代的C語言,不僅會制霸雲端運算,10年內將會制霸整個IT領域。
前不久,Facebook也開源了很多Go語言庫,可前往GitHub託管地址查看。

10大流行Go語言開源項目

適逢Go語言誕生5周年之際,外媒JavaWorld也發布文章,整理了由Go語言開發的10大流行開源項目。Go語言目前從虛擬化到Git代碼託管服務等方面,都有重量級項目現身,越發凸現Go語言在雲端運算時代的重要性。

1. Docker

到現在,Docker幾乎是Go再難找到也難以複製的一個成功案例。Docker項目在2014年9月份就拿到了C輪4000萬美元融資,版本迭代速度超快,目前從GitHub看到已有78個版本,而它僅僅是再2013年初才正式開始的一個項目而已。目前,國內Docker技術推廣也進行的如火如荼,比如 Docker中文社區,CSDN也建立了 Docker專區。CSDN CODE也將在近期與Docker中文社區合作,推出Docker技術文章翻譯活動,屆時也請大家多多關注,及時關注與參與。

Docker團隊之所以喜歡用Go語言,主要是Go具有強大的標準庫、全開發環境、跨平台構建的能力。

GitHub託管地址: https://github.com/docker/docker

2. Kubernetes

Kubernetes是2014年夏天Google推出的Kubernetes,基於Docker,其目的是讓使用者通過Kubernetes叢集來進行雲端容器叢集的管理,而無需使用者進行複雜的設定工作。系統會自動選取合適的工作節點來執行具體的容器叢集調度處理工作。其核心概念是Container Pod(容器倉)。

GitHub託管地址: https://github.com/GoogleCloudPlatform/kubernetes

3. Etcd & Fleet

etcd是由CoreOS開發並維護KVStore for Redis系統,它使用Go語言編寫,並通過Raft一致性演算法處理日誌複製以保證強一致性。目前,Google的Lark系統Kubernetes、開源PaaS平台Cloud Foundry和CoreOS的Fleet都廣泛使用了etcd。詳情,可瞭解 《Etcd:用於服務發現的KVStore for Redis系統》。 Fleet則是一個分布式的初始化系統。它們之所以選擇使用Go語言,則是因為Go語言對跨平台的良好支援,以及其背後的強大社區。

GitHub託管地址: https://github.com/coreos/etcd

4. Deis

Deis是一個基於Docker和CoreOS的開源PaaS平台,旨在讓部屬和管理伺服器上的應用變得輕鬆容易。它可以運行在AWS、GCE以及Openstack平台下。詳情,可瞭解 《Deis v1.0正式發布!》。

GitHub託管地址: https://github.com/deis/deis

5. Flynn

Flynn是一個使用Go語言編寫的開源PaaS平台,可自動構建部署任何應用到Docker容器叢集上運行。Flynn項目受到Y Combinator的支援,目前仍在開發中,被稱為是下一代的開源PaaS平台。

GitHub託管地址: https://github.com/flynn/Flynn

6. Lime

相對上面的幾款Go語言在雲端和伺服器端之外,Lime則顯得比較特殊。Lime,則是一款用Go語言寫的案頭編輯器程式,被看做是著名編輯器Sublime Text的開源實現。

GitHub託管地址: https://github.com/limetext/lime

7. Revel

Revel是一個高生產力的Go語言Web架構。Revel架構支援熱編譯,當編輯、儲存和重新整理源碼時,Revel會自動編譯代碼和模板;全棧特性,支援路由、參數解析、緩衝、測試、國際化等功能。

GitHub託管地址: https://github.com/revel/revel

8. InfluxDB

一個Go語音編寫的開源分布式的時序、事件和指標資料庫,無需外部依賴。其設計目標是實現分布式和水平伸縮擴充。

GitHub託管地址: https://github.com/influxdb/influxdb

9. Syncthing

一款用Go語言編寫的開源雲端儲存和同步服務工具,使用者的資料將由自己完全控制,所有的通訊全都加密,每個訪問節點都用加密認證驗證。該項目被認為是Dropbox和 BitTorrent Sync的開源替代, 詳情。Syncthing之所以選擇Go語言,也是出於跨平台考慮。

GitHub託管地址: https://github.com/syncthing/syncthing

10. Gogs

Gogs則是一款由國人無聞(GitHub)開發的自助Git服務項目。Gogs的目標是打造一個最簡單、最快速和最輕鬆的方式搭建自助Git服務。據作者稱,之所以選擇使用Go語言開發,就是Go允許Gogs可以通過獨立的二進位分發,且對跨平台有良好支援。

GitHub託管地址: https://github.com/gogits/gogs

除了上面的10款流行Go語言項目外,我們這裡另外外大家推薦幾款Go語言相關的項目,如國人開發的Go Web應用程式框架 Beego、開源的Go語言開發環境 LiteIDE等,它們也都很流行,希望大家多多關注並支援國人開源項目。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.