Go語言開源項目知多少_行業動態_資訊_DevStore

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

Go語言誕生已有5周年,發展到現在,從虛擬化到Git代碼託管服務等方面,都有重量級項目現身,越發凸現Go語言在雲端運算時代的重要性。

外媒JavaWorld整理的由Go語言開發的10大流行開源項目:

1Docker

到現在,Docker幾乎是Go再難找到也難以複製的一個成功案例。Docker項目在2014年9月份就拿到了C輪4000萬美元融資,版本迭代速度超快,目前從GitHub看到已有78個版本,而它僅僅是再2013年初才正式開始的一個項目而已。目前,國內Docker技術推廣也進行的如火如荼,比如 Docker中文社區,CSDN也建立了 Docker專區。

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

2. Kubernetes

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

3. Etcd & Fleet

etcd是由CoreOS開發並維護KVStore for Redis系統,它使用Go語言編寫,並通過Raft一致性演算法處理日誌複製以保證強一致性。目前,Google的Lark系統Kubernetes、開源PaaS平台Cloud Foundry和CoreOS的Fleet都廣泛使用了etcd。

Fleet則是一個分布式的初始化系統。它們之所以選擇使用Go語言,則是因為Go語言對跨平台的良好支援,以及其背後的強大社區。

4. Deis

Deis是一個基於Docker和CoreOS的開源PaaS平台,旨在讓部屬和管理伺服器上的應用變得輕鬆容易。它可以運行在AWS、GCE以及Openstack平台下。

5. Flynn

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

6. Lime

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

7. Revel

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

8. InfluxDB

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

9. Syncthing

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

10. Gogs

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

來自技術部落格的整理,go語言相關開源項目:

工具類:

goclipse:是一個eclipse外掛程式,可以用來開發go語言

liteide: 專門用來開發go的ide

應用類:

Go Read :go語言開發的可替代google reader的東西

架構類:

beego:強大的web架構

gwk: gwk(GO Web Server Kit)是GO語言的Web Server開發架構,簡單易用,擴充性好,而且相容Go App Engine。

Go成功的項目

nsq:bitly開源的訊息佇列系統,效能非常高,目前他們每天處理數十億條的訊息

packer:用來產生不同平台的鏡像檔案,例如VM、vbox、AWS等,作者是vagrant的作者

skynet:分布式調度架構

Doozer:分布式同步工具,類似ZooKeeper

Heka:mazila開源的Tlog系統

cbfs:couchbase開源的Distributed File System

tsuru:開源的PAAS平台,和SAE實現的功能一模一樣

groupcache:memcahe作者寫的用於Google下載系統的緩衝系統

god:類似redis的緩衝系統,但是支援分布式和擴充性

gor:網路流量抓包和重放工具

儘管go語言還沒有發展成熟,但其簡潔、快速、安全、並行、有趣、開源等特點也促使其快速發展,Google也對go充滿期待,但相關計劃想要完全取代現有的技術幾乎不可能,Google首席軟體工程師羅布派克(Rob Pike)也說:我不認為我們能取代任何東西。我們只是創造出這個領域的另一個角色。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.