首頁  >  文章  >  後端開發  >  go語言有微服務框架嗎

go語言有微服務框架嗎

青灯夜游
青灯夜游原創
2022-11-30 19:29:268600瀏覽

go語言有微服務框架,例如:1、Istio,是一個開源的微服務管理、保護和監控框架;2、Go-kit,是一個Go語言的分散式開發包,用於開發微服務;3、Go-zero,是一個整合了各種工程實踐的web和rpc框架;4、Go-micro,是一個專注於簡化分散式系統開發的微服務生態系統;5、Kratos;6 、CloudWeGo-Kitex;7、Goa;8、Dubbo-go等等。

go語言有微服務框架嗎

本教學操作環境:windows7系統、GO 1.18版本、Dell G3電腦。

微服務框架是將某個應用程式開發劃分為對許多小型服務獨立的進行業務開發,這些服務一般圍繞業務規則進行構建,可以用不同的語言開發,使用不同的數據存儲,最終使得每個服務運行在自己的行程中。並且它們之間採用輕量級通訊機制進行通訊。

那麼有基於go語言的微服務框架嗎? 答案是:有!以下就來分享一些Go語言開發的微服務框架。

1.Istio(31.7K)

專案簡介:Istio是由Google 、IBM和Lyft開源的微服務管理、保護和監控框架。使用istio可以很簡單的創建具有負載平衡、服務間認證、監控等功能的服務網絡,而不需要對服務的程式碼進行任何修改。

倉庫網址:https://github.com/istio/istiohttps://github.com/istio/istio

官方文件網址:https://istio.io/latest/docs/https://istio.io/ latest/docs/

2.Go-kit(24.1K)

專案簡介:Go-kit 是一個Go 語言的分散式開發包,用於開發微服務。

倉庫位址:https://github.com/go-kit/kit/https://github.com/go -kit/kit/

官方文件網址:https://gokit.io/

#3.Go-zero(24.1K)

#專案簡介:go-zero 是一個整合了各種工程實踐的web 和rpc 框架。 倉庫位址:https://github.com/tal-tech/go-zero

https://github.com/ tal-tech/go-zero

官方文件網址:

https://go-zero.dev/cn/docs/introduction 4.Go-micro

(19.6K)

#專案簡介:Micro是一個專注於簡化分散式系統開發的微服務生態系統。可插拔的插件化設計,提供強大的可插拔的
架構

來確保基礎元件可以被靈活替換。

######倉庫位址:https://github.com/asim/go-micro###

官方文件地址:https://go-micro.dev/

中文文件:#介紹· go-micro 微服務開發中文手冊· 看雲Micro是一個微服務生態系。目標是簡化分散式系統開發。技術正在迅速發展。現在雲端運算能夠給我們幾乎是無限的scale能力,但是採用現有工具來使用scale能力仍然是很困難的。 Micro試圖去解決這個問題,開發人員首先關注。 Micro的核心是簡單易用,任何人都可以輕鬆開始編寫微服務。隨著您擴展到數百種服務,Micro將提供管理微服務環境所需的基本工具https://www.kancloud.cn/linimbus/go-micro/529015 

5.Kratos(19.2K)

專案簡介:#嗶哩嗶哩(B站)開源的一套Go微服務框架,包含大量微服務相關框架及工具。

倉庫地址:https://github.com/cloudwego/kitex

#官方文件地址:https://go-kratos.dev/docs/

6.CloudWeGo-Kitex(5.2K)

專案簡介:位元組跳動,KiteX 自2020.04 正式發布以來,公司內部服務數量8k ,QPS 過億。 KiteX 是位元組跳動框架組研發的下一代高效能、強可擴充性的 Go RPC 框架。除具備豐富的服務治理特性外,相較於其他架構還有以下特點:整合了自研的網路庫Netpoll;支援多訊息協定(Thrift、Protobuf)與多重互動方式(Ping-Pong、Oneway、 Streaming);提供了更靈活可擴展的程式碼產生器。

倉庫位址:https://github.com/cloudwego/kitex

#官方文件網址:https://www.cloudwego.io/zh/docs/overview/

7.Goa(4.9K)

專案簡介:Goa 是一款用Go 用於建立微服務的框架,採用獨特的設計優先的方法

倉庫位址:https://github.com/goadesign/goa

官方文件地址:https:// goa.design/

8.Dubbo-go(4.2K)

專案簡介:阿里,由Apache 軟體基金會官方發布Go 語言加入Dubbo 生態,架構是基於dubbo的extension模組和分層的程式碼設計,主要解決Go 專案與Java & Dubbo 專案的互通問題,同時也為Go 專案提供了一種RPC 與微服務

倉庫位址:https://github.com/apache/dubbo-go

官方文件地址:https://dubbogo.github.io/dubbo-go-website/zh-cn/

9.Jupiter(3.9K)

專案簡介:鬥魚開源的一套微服務治理框架,提供豐富的後台功能,管理應用的資源、配置,應用的效能、配置等視覺化。

倉庫網址:https://github.com/douyu/jupiter

#官方文件網址:http://jupiter.douyu.com/

#10.Tars-go(3.1K)

專案簡介:騰訊,Tarsgo是基於Golang程式語言使用Tars協議的高效能RPC框架

倉庫位址:https://github.com/TarsCloud/TarsGo

官方文件地址:https ://tarscloud.github.io/TarsDocs/SUMMARY.html#TarsGo

附:北極星-polaris-go

北極星是騰訊開源的服務發現和治理中心,致力於解決分散式或微服務架構中的服務可見、故障容錯、流量控制和安全性問題。

倉庫位址:https://github.com/polarismesh/polaris

#官方文件地址:https://polarismesh.cn/#/

11.Jaeger

Jaeger是Uber的分散式追蹤系統,基於google dapper的原理構建, 以Cassandra作為儲存層。

12.fabio

#

fabio是ebay團隊用golang開發的一個快速、簡單零配置能夠讓consul部署的應用快速支援http(s)的負載平衡路由器。 【相關推薦:Go影片教學

13.gizmo

gizmo是紐約時報開源的go微服務工具,提供以下特性:標準化配置和日誌;可配置策略的狀態監測端點;用於管理pprof端點和日誌級別的配置;結構化日誌,提供基本請求信息;端點的有用度量;優雅的停止服務; 定義期待和詞彙的基本介面。

14.kite

kite是一個基於go語言的微服務框架, Kite是Koding公司內部的一個框架, 該框架提供服務發現,多種認證功能,服務端透過RPC進行通信,同時也提供了websocket的js庫,方便瀏覽器於伺服器間進行通訊。

15.hystrix-go

#hystrix-go是用來隔離遠端系統調用,第三方函式庫調用,服務調用,提供熔斷機制,避免雪崩效應的函式庫, Hystrix的go版本。註Hystrixs是Netflix開源的一個java庫。

16.Gateway

Gateway是一個使用go實作的基於HTTP的API網關。特性:API聚合; 流控; 熔斷; 負載平衡; 健康檢查; 監控; 訊息路由; 後端管理WebUI。能做什麼:規劃更友善的URL給呼叫者。聚合多個API的結果傳回給API呼叫者,利於行動端,後端可以實作原子介面。保護後端API服務不會被突發異常流量壓垮。提供熔斷機制,使得後端API Server具備自我復原能力。借助訊息路由能力,實現灰階發布,AB測試。

17.rainbond

雲端幫是一款以應用程式為中心的開源PaaS,深度整合Kubernetes的容器管理和Service Mesh微服務架構最佳實踐,滿足支撐業務高速發展所需的敏捷開發、高效運維和精實管理需求。

18.appdash

appdash是一款go版本的分散式應用程式追蹤系統, 基於google dapper的原理建構。

19.Hprose

Hprose是高效能遠端物件服務引擎的縮寫—微服務首選引擎。它是一個先進的輕量級的跨語言跨平檯面向對象的高效能遠端動態通訊中間件。它不僅簡單易用,而且功能強大。你只需要稍許的時間去學習,就能用它輕鬆建構跨語言跨平台的分散式應用系統。

更多程式相關知識,請造訪:程式設計影片! !

以上是go語言有微服務框架嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn