位元組跳動需要用go語言。位元組跳動已經全面擁抱了go語言,公司內部有上萬個微服務使用golang來寫。原因是位元組跳動更重視效率,而Go語言上手簡單,學習難度低,開發效率高,效能也比較好;另外, Goroutine和Channel這兩個神器可以很好解決並發和非同步程式設計的問題。
本教學操作環境:windows7系統、GO 1.18版本、Dell G3電腦。
隨著雲端運算時代的到來,Go 的應用越來越廣泛,已然成為首選程式語言,而且,薪資也水漲船高。
由於Go語言有語法簡單、高效能等特點,因此國內外各大公司如Google、騰訊、字節等都在使用,特別是字節全面擁抱Go,原因是最初因性能問題將Python換成Go,而Go學習簡單,性能高,且部署簡單。總的來說Go語言特性如下:
語法簡單、學習曲線平緩
高效能、高並發
#豐富的標準函式庫
完善的工具鏈
靜態連結
快速編譯
跨平台
垃圾回收
##舉個簡單範例
簡單兩句程式碼就可以啟動一個web服務
package main
import (
"net/http"
)
func main() {
http.Handle("/", http.FileServer(http.Dir(".")))
http.ListenAndServe("localhost:8080", nil)
}
登入後複製
哪些公司用Go語言
Go語言有哪些公司正在使用,然後主要應用在哪些場景?
- 字節跳動已經全面擁抱了go語言,公司內部有上萬個微服務使用golang來編寫,不久前也開源了GO RPC框架KiteX。 位元組跳動更重視效率,上手簡單,學習難度較低。另外, Goroutine 和 Channel 這兩個神器可以很好解決並發和非同步程式設計的問題,不得不說,Go 語言是新一代的程式語言。
- 根據拉勾的招募數據,騰訊、百度、美團、滴滴、深信服、平安、OPPO、知乎、去哪兒、360、 金山、微博、嗶哩嗶哩、七牛、PingCAP 等公司也在大星使用Go語言。國外Google、Facebook等公司也大量使用Go語言。
- 從業務維度看過語言已經在雲端運算、微服務、 大數據、區塊鏈、物聯網等領域蓬勃發展。然後在雲端運算、微服務等領域已經有非常高的市場佔有率Docker、Kubernetes、 Istio、 etcd、 prometheus 幾乎所有的雲端原生組件全是用Go實現的。
位元組跳動為什麼全面擁抱GO語言
- 最初使用的Python, 由於效能問題換成了Go
- C 不太適合線上Web業務
- 早期團隊非Java背景
- #效能比較好
- 部署簡單、學習成本低
- 內部RPC和HTTP框架的推廣
我們知道位元組跳動已經全面擁抱了go語言,而最開始公司的後端業務主要是web後端,早期團隊非Java背景,C 不太適合在線Web業務,所以最開始的服務都是python的,大概從2014年開始,隨著業務體量的成長,python 遇到一些效能問題。
有些團隊初步嘗試使用了Go,發現入門很簡單,開發效率高,效能也比較好。 go語言的開發與部署非常簡單,順帶解決了先前python帶來
的很頭痛的依賴函式庫版本問題。一些業務嚐到甜頭之後, 後面開始公司級大力推廣,誕生 了公司內部的基於golang的rpc和http框架。
隨著框架的推廣,越來越多的python服務 使用golang重寫,至今為止, golang已經成為內部使用率最高的程式語言。
【相關推薦:
Go影片教學、程式設計教學】
以上是位元組跳動需要用go語言嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!