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

go語言有微服務框架嗎

Nov 30, 2022 pm 07:29 PM
go golang go語言 微服務框架

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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

Go語言中用於浮點數運算的庫有哪些? Go語言中用於浮點數運算的庫有哪些? Apr 02, 2025 pm 02:06 PM

Go語言中用於浮點數運算的庫介紹在Go語言(也稱為Golang)中,進行浮點數的加減乘除運算時,如何確保精度是�...

Go的爬蟲Colly中Queue線程的問題是什麼? Go的爬蟲Colly中Queue線程的問題是什麼? Apr 02, 2025 pm 02:09 PM

Go爬蟲Colly中的Queue線程問題探討在使用Go語言的Colly爬蟲庫時,開發者常常會遇到關於線程和請求隊列的問題。 �...

在 Go 語言中,為什麼使用 Println 和 string() 函數打印字符串會出現不同的效果? 在 Go 語言中,為什麼使用 Println 和 string() 函數打印字符串會出現不同的效果? Apr 02, 2025 pm 02:03 PM

Go語言中字符串打印的區別:使用Println與string()函數的效果差異在Go...

在Go語言中使用Redis Stream實現消息隊列時,如何解決user_id類型轉換問題? 在Go語言中使用Redis Stream實現消息隊列時,如何解決user_id類型轉換問題? Apr 02, 2025 pm 04:54 PM

Go語言中使用RedisStream實現消息隊列時類型轉換問題在使用Go語言與Redis...

GoLand中自定義結構體標籤不顯示怎麼辦? GoLand中自定義結構體標籤不顯示怎麼辦? Apr 02, 2025 pm 05:09 PM

GoLand中自定義結構體標籤不顯示怎麼辦?在使用GoLand進行Go語言開發時,很多開發者會遇到自定義結構體標籤在�...

Go語言中哪些庫是由大公司開發或知名的開源項目提供的? Go語言中哪些庫是由大公司開發或知名的開源項目提供的? Apr 02, 2025 pm 04:12 PM

Go語言中哪些庫是大公司開發或知名開源項目?在使用Go語言進行編程時,開發者常常會遇到一些常見的需求,�...

Golang的目的:建立高效且可擴展的系統 Golang的目的:建立高效且可擴展的系統 Apr 09, 2025 pm 05:17 PM

Go語言在構建高效且可擴展的系統中表現出色,其優勢包括:1.高性能:編譯成機器碼,運行速度快;2.並發編程:通過goroutines和channels簡化多任務處理;3.簡潔性:語法簡潔,降低學習和維護成本;4.跨平台:支持跨平台編譯,方便部署。

在Go編程中,如何正確管理Mysql和Redis的連接與釋放資源? 在Go編程中,如何正確管理Mysql和Redis的連接與釋放資源? Apr 02, 2025 pm 05:03 PM

Go編程中的資源管理:Mysql和Redis的連接與釋放在學習Go編程過程中,如何正確管理資源,特別是與數據庫和緩存�...

See all articles