TOP100summit 2017 七牛雲許式偉:不用JAVA和C語言,我爲何堅持Go語言

本文編輯:Cynthia程序員

2009年,谷歌發佈第二款開源編程語言,Go語言。8年過去了,不少初創公司早期使用Go進行開發,包括雲計算巨頭Docker。而Go語言在中國的普及程度還比不上JAVA和C語言,可是有一家公司,堅持在使用Go,而且剛剛得到10億元的融資,這家公司就是七牛雲。
圖片描述golang

早在2009年,Go語言剛剛發佈的時候,在中國的一名程序員許式偉驚奇的發現,Go語言與他帶領的團隊所作的CERL項目在服務器編程模型這一點上,CERL2.0與Go語言竟然徹底同樣,包括全部細節的決策上也都相同。編程

有人建議許式偉將CERL開源,可是許式偉在使用Go一週後決定,不讓CERL面世,由於Go已經完成了CERL的目標,而且遠超預期。後來,許式偉成爲Go語言在中國的佈道師,而且編著了《Go 語言編程》和《Go 語言程序設計》兩本書。segmentfault

圖片描述
許式偉作CERL項目的初衷,是當時在盛大創新院重啓分佈式存儲項目,選擇了用C++語言來開發,他但願再造一個既有Erlang編程思想的優點,又能夠客服Erlang語言劣勢的新輪子。CERL項目經歷了2個大版本,而Go語言發佈後就結束了它的歷史使命。服務器

許式偉2007年創建金山實驗室,選擇了JAVA做爲主體開發語言,2009年加入盛大創新院,選擇C++做爲開發語言,而2011年許式偉創辦七牛雲的時候,堅定的選擇了Go語言,並在郵件中說,創業過程當中的不少選擇均可能會被證實是錯的,可是選擇Go將會成爲最正確的選擇。
圖片描述架構

2017年8月,七牛雲得到10億元的融資,成爲國內領先的雲存儲服務平臺,時至今日,許式偉依然在堅持着Go。併發

七牛雲的第一個業務是雲存儲,許式偉徹底用Go來開發存儲系統,這是全球第一個用Go寫的雲存儲和雲服務。
圖片描述編程語言

2014年七牛雲開展大數據相關業務,一樣面臨技術選型的問題,JAVA和JVM平臺的語言都頗有優點,可是許式偉認爲Go將來將會佔領整個基礎設施領域,大數據是其中具備關鍵意義的內容,所以,最終仍是面向將來作選型,使用了Go。分佈式

相比其餘語言,Go有部署簡單、併發性好、執行性能好、語言設計良好等優點,在知乎上一位答主這樣介紹Go:微服務

從學術角度講,Go語言其實很是平庸,不支持許多高級的語言特徵。但從工程角度來講,Go語言規範而且足夠簡單靈活,只要有其餘語言基礎的程序員均可以很快的上手。

Go有很是完善的工具鏈,好比gofmt自動排版Go代碼,杜絕了不一樣人寫代碼排版風格不一致的問題,提升團隊協做性。

Go編譯生成的是一個靜態可執行文件,除了glibc沒有其餘外部依賴,讓部署變得很是方便。

單個Go應用能夠有效利用多個CPU核,並行執行的性能好,執行性方便雖然不如C和JAVA,可是比原生Python應用要高級,適合寫瓶頸業務。
圖片描述

幾年的發展之後,Go已經再也不是一門小衆語言,經過 Google Trends 搜索 golang 發現全世界 Go 最火的地區在中國。

許式偉是Go在中國的佈道師,用Go語言打造的七牛雲平臺服務着秒拍、小咖秀等互聯網公司,那麼,你會用Go嗎?

七牛雲CEO將擔任11月9日在北京國家會議中心開幕的第六屆TOP100全球軟件案例研究峯會架構專場的聯席主席,現場對來自全球各地的優秀軟件研發開發者進行點評。

目前架構專場已入圍的案例包括Uber、百度、小米、途牛、淘寶、360、中興等大廠,從架構設計、微服務、UI架構思考、架構重構等方面介紹各自團隊的開發實踐。

圖片描述

許式偉將從對架構的理解、業務的理解以及開發實踐等角度給出開發者建議,若是你想要了解Go,若是你想向Go的佈道師取經,能夠到現場進行交流。

更多TOP100案例信息及日程請前往[官網]查閱。4天時間集中分享2017年最值得學習的100個研發案例實踐。本平臺共送出10張開幕式單天免費體驗票,數量有限,先到先得。

相關文章
相關標籤/搜索