為何大部分運維工程師是Go語言工程師?

時間 2021-05-12 12:00:43

1樓:雲原生玩碼部落

我沒有資料來證明或者否定你。但是go來開發linux程式確實很香,打包成乙個二進位制就可以了。

順便暢享下:未來會不會像Python一樣內嵌到linux很多發行版中呢

2樓:

因為運維強調最小依賴,比如bash,只依賴libc,但效能和表達能力弱。

python依賴太多,換個環境可能就不行了。

go編譯出來就乙個可執行檔案,只依賴系統呼叫,這比libc還穩定,意味著作業系統版本也不依賴(或者說依賴更小)

列一下常見的程式語言,對運維而言,可能go是最合適的了。

3樓:哲學家

Docker, k8s , Prometheus, consul, etcd, envoy ...有沒有發現,infrastructure 這塊已經被Go 占領了?那做運維的怎麼能不學一下?

4樓:圓胖腫

嗯,我也發現了這一點,那些鼓吹go的程式設計師,基本上都是做運維工作的,所以沒有什麼像樣的軟體產品能拿的出手,基本上除了工具還是工具,沒有達到產品的層級,適合在大廠裡面混

其實就是crud,不涉及任何介面上的開發,所以用指令碼的比較多

然後可能看到了go在io時候,可以阻塞goroutine,而不是thread,所以效能上有所提公升,所以就轉換成go程式設計師

而go的本意是想吸引c/c++程式設計師,但並不成功,乙個主要原因是c++很多在做圖形處理,gui,還有一些遊戲之類的工作,而go在這一塊,並不擅長,這一塊主要是用oop特性

像oop的設計模式,mvc,最早就是用來處理gui的,至今flutter什麼還在這一塊上搞搞搞

所以Google後來在gui上,也選擇了flutter,而不是go,蘋果後續做的swift,跟flutter所用的dart什麼,感覺都是oop語言,然後加上點其他東西的產物

還是看菜吃飯,看來go適合運維,尤其適合那些crud的操作,特別適合io多的crud

那我們小公司,基本上都用雲計算了,不需要雇人去運維了,所以對go並不感冒

5樓:

方便高效

作為乙個前端工程師

Go寫完了可以直接go release構建三個平台Go format比前端這塊舒服太多

語法簡潔

沒啥亂七八糟的東西

配合modd,可以跟前端資源一起打乙個包,分離也方便不要太爽

發布部署配合tmux,一句話起環境。簡直開心的不得了再也不管亂七八糟的各種環境了

6樓:Mr奇淼

前端+後端=全棧

前端+運維=運維

後端+運維=運維

前端+後端+運維+運維=運維+運維

前端+後端=0

全棧=0

附帶乙個go加vue的專案我這個0號工程師寫的(真的缺運維

7樓:liys87x

以前做運維開發主要圍繞 Linux 作業系統,Python 有大量的 IT 自動化工具(如 ansible); 而進入雲原生之後,尤其是面向 kubernetes 後,go 變成了領域語言,用 go 做二次開發會方便許多。

伴隨著微服務、DevOps 等理念的深入,面向iaas 的操作越來越少,面向 paas 甚至 saas 的場景越來越多。所以運維開發使用 Python 的時間在下降,使用 go 的時間在上公升,但這不代表放棄 Python 。它們有各自適用的場景,場景不同,語言不同。

運維開發涉及廣泛的領域知識,很難讓乙個業務開發人員短時間了解運維開發的內容,所以新時代的運維開發多數都是從舊時代運維開發轉過來的。

但 go 工程師都是運維開發這個觀點我不認可,有大量的人員使用go做業務開發(比如 web,區塊鏈,雲平台等),運維開發(暫且認為devops、sre工程師和運維開發同屬一類)在go工程師中的比例能到多少,不知道有無資料支援,我的預計不會超過50%

8樓:卜蘭德

其實大部分並不是運維工程師,而是會運維和開發的運維開發工程師(DevOps)

Golang 是構建雲原生的首選語言,CNCF官網上所列的專案(已畢業、孵化中、沙盒)絕大部分都是Golang開發的專案。對雲原生技術,有這樣的定義:

雲原生技術有利於各組織在公有雲、私有雲和混合雲等新型動態環境中,構建和執行可彈性擴充套件的應用。雲原生的代表技術包括容器、服務網格、微服務、不可變基礎設施和宣告式API。

下圖取自雲棲:

9樓:「已登出」

容器的相關技術如docker、k8s都是go語言寫的,運維想深入研究的話,go語言是跳不過去的。

go語言簡單易學,效能優秀而且部署簡單,適合沒有複雜業務開發經驗的運維工程師。

10樓:溫崢峰

若干年前,Python是怎麼興起以及替代運維工程師常用的Shell和Perl呢

主要是由於DevOps文化的驅動,運維工程師不甘心再寫一些指令碼式的簡單功能

Python能夠寫一些更加專案化的專案,可以保持專案的擴充套件、封裝、復用性等等,也有各種方便的Web框架能快速搭建所需的運維自動化平台

然而近年來,很多運維相關新興開源專案都是用Go語言實現,如Docker、Kubernetes、OpenFalcon、Prometheus等

運維工程師熟悉Go語言可以更加深入地了解相關開源專案,熟悉其架構實現

甚至可以在其基礎上進行簡單的二次開發,實現我們所需要的功能

而且Go和Python兩門程式語言在語法上都有各自的特點,而且都易學易用,兩者都學習了,技多不壓身

它們並不存在取代關係,而是各自在其領域發揮自己的作用,Python的語法簡單直觀,Go兼具語法簡單和執行高效的有點,在多執行緒處理方面很優秀,非常適合已經掌握一定程式設計基礎和一門主流語言的同學學習

題目所述的放棄Python,有點過激,因為很多過去留下的專案、指令碼,都是Python實現的,不可能放棄。最多也就是用Go開發後續新的專案,我們運維團隊現在還是Python佔大頭,Go用於一些比較新的專案二次開發

運維工程師這個行業,由於入門門檻比較低,中高階的運維工程師們,都喜歡通過一些比較新的技術或者技能來武裝或者標榜自己

如幾年前的Python VS Shell、DevOps VS 指令碼運維、容器化 VS 虛擬機器等等

都是通過引入比較新的技術來完善自身的技術體系和運維團隊技術棧

試想,兩位能力和工作經驗差不多的運維工程師:

乙個只熟悉老一套的Shell、Python、Nginx等;

乙個還熟悉新興的Go、Docker、Kubernetes等;

哪乙個在職業市場中的競爭力更強?

為了運維工程師能力體系的差異化競爭,有技術和上公升追求的運維工程師都會不斷學習新的技能

而Go語言就是近來最好的載體,通過學習這門語言,再深入相關的主流新興專案(Docker、Kubernetes、OpenFalcon),達到能力差異化競爭的目的

而至於其他的什麼安裝、配置、編譯、併發程式設計等,都是次要的

不僅僅運維,不少開發、測試也兼修了Go作為備用工具,還是那句,技多不壓身!

11樓:

半澤直樹

可能是因為公司軟體布在kubernetes上面吧。

12樓:

容器技術的發展是乙個很大的轉折點。以前iaas那套東西,虛擬機器天生就過於笨重,不適合頻繁得遷移。容器的出現將linux程式裡的那套依賴解放了出來,並且很適合做頻繁的排程。

而python的依賴比較麻煩,golang就恰好適合,並且效能還不錯。正好docker也是用golang編寫,它就搭著這股東風在運維裡流行起來了。

13樓:

主要原因,應該是當下比較火的技術,比如說docker,k8s等這些容器技術,都是用GO開發的

所以,不得不去學習GO語言。

還有,GO語言的特性更適合分布式系統的開發,比如我們公司的監控系統,就是使用Go語言開發的

14樓:碼道仕

Go語言部署非常方便,編譯後直接部署二進位制檔案即可,無需考慮環境依賴問題。Go作為一門編譯語言,有接近C的執行效率和接近Python的開發效率,不光是運維,其他語言的開發者也有很多在學習Go,使用Go,尤其在網際網路企業,對一些有效能要求的業務場景,經常活躍著Go的身影。

對於運維來說,隨著Docker和K8S的普及和DevOps理念的深入人心,學習Go的運維也就越來越多了,但並一定學了Go就放棄了Python,運維用Python也挺多的,都學都用,技多不壓身啊。

15樓:

學習Go語言並不是都去做了運維,而是運維已經越來越喜歡Go語言,他們從python轉過來,主要原因在於Go更適合開發運維(DevOps),而python更像指令碼,當然golang的簡潔,高效,適合做網路,高併發這些優點就不說了。

其次,越來越多的運維平台使用go開發,比如docker,k8s,普羅公尺修斯,granfa等等,這意味著學習golang才能更好的使用它們,甚至二次開發他們。

這是乙個很好的開始,而且對運維轉運維開發是個機會,一定要把握住。

要學習Go語言可以參考我這篇高讚回答。

知乎使用者:系統學習GO語言(Golang),推薦幾本靠譜的書?

近幾年各大運動品牌是如何保持旗下大部分運動鞋品類的售價基本不變的?

阿Nel 其實題主這個問題很專業,讓我來說明一下。如果是復刻鞋款,就是說一模一樣的鞋款,再重現市場,是有價錢的調整的。那是當然的事,你不可能要求1988年的鞋子售價,在1999年 2004年 2009年 2014年,都是售賣同樣的價錢。可是,他們的售價,還是合理的,是跟不上通貨膨脹的。1999年的喬...

為什麼大部分運動的最高榮譽是奧運會,而高爾夫球就卻不是?

賽事獎金額分析 奧運會上90 的專案都是商業化程度很低的 業餘比賽 但凡以奧運會金牌為業內終極榮譽的比賽,基本都是 冷門野雞邊角料 專案。男子足球以大力神金盃馬首是瞻,棒球 籃球和冰球都以北美聯盟的錦標為最高殿堂 奧運會男籃和冬奧會男冰可能稍微好一點 奧運會男足也是吃了世界第一運動的紅利 而奧運會棒...

從職業的角度看,運維工程師是怎樣的上公升路徑

李先生 小女子暫且談談自己的理解,請各位大哥哥勿噴。初級運維工程師 中級運維工程師 高階運維工程師 運維專家 運維工程師 運維組長 運維經理 運維總監 乾掉老闆 監控運維 系統運維 應用運維 運維開發 DBA 暫且列入運維 雲計算運維 Dokcer K8s SRE如果是走技術路線,目前接觸到的是這些...