概觀
Go 協助企業自動化和擴充
開發營運 (DevOps) 團隊協助工程組織自動化任務並改善其持續整合和持續交付與部署 (CI/CD) 流程。DevOps 可以推翻開發孤島並實作工具和自動化,以增強軟體開發、部署和支援。
網站可靠性工程 (SRE) 誕生於 Google,目的是讓該公司的「大型網站更可靠、更有效率、更具擴充性」,獨立 DevOps 顧問 Silvia Fressard 寫道。「他們所開發的實務非常符合 Google 的需求,以至於其他大型科技公司,例如 Amazon 和 Netflix,也採用了這些實務。」SRE 需要結合開發和營運技能,並且「授權軟體開發人員擁有其應用程式在生產環境中持續的日常營運。」
Go 從其快速的建置時間和精簡語法到其安全性與可靠性支援,為 DevOps 和 SRE 這兩兄弟提供服務。Go 的並行性和網路功能也使其成為管理雲端部署的工具的理想選擇,在開發基礎架構隨著時間推移而成長時,它能輕易支援自動化,同時擴充速度和程式碼可維護性。
DevOps/SRE 團隊撰寫的軟體範圍從小型指令碼、命令列介面 (CLI) 到複雜的自動化和服務,而 Go 的功能組對每個情況都有好處。
主要優點
使用 Go 的健全標準函式庫和靜態型別輕鬆建置小型指令碼
Go 的快速建置和啟動時間。Go 豐富的標準函式庫,包括用於常見需求的套件,例如 HTTP、檔案 I/O、時間、正規表示式、exec 和 JSON/CSV 格式,讓 DevOps/SRE 能直接進入其業務邏輯。此外,Go 的靜態型別系統和明確的錯誤處理,讓即使是小型指令碼也更健全。
使用 Go 的快速建置時間快速部署 CLI
每個網站可靠性工程師都寫過「一次性使用」的腳本,最後變成每天被其他數十位工程師使用的 CLI。而小型部署自動化腳本則變成推出管理服務。有了 Go,DevOps/SRE 在軟體範圍不可避免地擴增時,就能處於成功的位置。從 Go 開始,當發生這種情況時,就能讓您處於成功的絕佳位置。
使用 Go 的低記憶體使用量和文件產生器,擴充並維護較大型的應用程式
Go 的垃圾收集器表示 DevOps/SRE 團隊不必擔心記憶體管理。而 Go 的自動文件產生器 (godoc) 會讓程式碼自我記錄,降低維護成本,並從一開始就建立最佳實務。
特色使用者
客戶 | 簡介 | 使用 go 的專案 |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
開始使用
關於 DevOps 和 SRE 的 Go 書籍
監控和追蹤
-
open-telemetry/opentelemetry-go
供監控和分散式追蹤使用的供應商中立 API 和儀器
-
jaegertracing/jaeger-client-go
由 Uber 開發的開放原始碼分散式追蹤系統格式
-
grafana/grafana
用於監控和可觀察性的開放原始碼平台
-
istio/istio
開放原始碼服務網格和可整合平台
CLI 函式庫
-
spf13/cobra
用於建立強大的現代 CLI 應用程式和一個用於在 Go 中產生應用程式和 CLI 應用程式的程式
-
spf13/viper
Go 應用程式的完整組態解決方案,設計用於在應用程式內處理組態需求和格式
-
urfave/cli
用於建立和組織命令列 Go 應用程式的最小框架