grpc go
Release 1.69.2
GRPC的GO實施:高性能,開源,一般RPC框架,將移動設備和HTTP/2放在首位。有關更多信息,請參見GO GRPC文檔,或直接跳入快速啟動。
只需將以下導入添加到您的代碼,然後go [build|run|test]將自動獲取必要的依賴項:
import "google.golang.org/grpc"注意:如果您想從中國訪問
grpc-go,請參見下面的常見問題解答。
golang.org域可能會被某些國家封鎖。 go get通常會在發生這種情況時產生以下錯誤:
$ go get -u google.golang.org/grpc
package google.golang.org/grpc: unrecognized import path "google.golang.org/grpc" (https fetch: Get https://google.golang.org/grpc?go-get=1: dial tcp 216.239.37.1:443: i/o timeout)要構建GO代碼,有幾個選擇:
設置VPN並訪問Google.golang.org。
使用GO模塊支持:可以使用go mod的replace功能為Golang.org軟件包創建別名。在您項目的目錄中:
go mod edit -replace=google.golang.org/grpc=github.com/grpc/grpc-go@latest
go mod tidy
go mod vendor
go build -mod=vendor同樣,這也需要針對Golang.org上託管的所有傳遞依賴項進行。有關詳細信息,請參閱Golang/GO問題#28652。
請使用go get google.golang.org/grpc更新到最新版本的GRPC-GO。
默認記錄器由環境變量控制。這樣打開一切:
$ export GRPC_GO_LOG_VERBOSITY_LEVEL=99
$ export GRPC_GO_LOG_SEVERITY_LEVEL=info"code = Unavailable desc = transport is closing"此錯誤意味著RPC使用的連接已關閉,並且有許多可能的原因,包括:
調試此問題可能很棘手,因為錯誤發生在客戶端,但是關閉連接的根本原因在服務器端。打開客戶端和服務器上的記錄,看看是否有任何傳輸錯誤。