L'implémentation GO de GRPC: un cadre RPC général à haute performance, open source, qui place d'abord Mobile et HTTP / 2. Pour plus d'informations, consultez les documents GO GRPC ou sautez directement dans le démarrage rapide.
Ajoutez simplement l'importation suivante à votre code, puis go [build|run|test] va automatiquement récupérer les dépendances nécessaires:
import "google.golang.org/grpc"Remarque: Si vous essayez d'accéder
grpc-gode Chine , consultez la FAQ ci-dessous.
Le domaine golang.org peut être bloqué de certains pays. go get produit généralement une erreur comme ce qui suit lorsque cela se produit:
$ 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)Pour créer du code GO, il existe plusieurs options:
Configurez un VPN et accédez à Google.golang.org à travers cela.
Avec la prise en charge du module GO: il est possible d'utiliser la fonction replace de go mod pour créer des alias pour les packages Golang.org. Dans le répertoire de votre projet:
go mod edit -replace=google.golang.org/grpc=github.com/grpc/grpc-go@latest
go mod tidy
go mod vendor
go build -mod=vendorEncore une fois, cela devra être fait pour toutes les dépendances transitives hébergées également sur golang.org. Pour plus de détails, reportez-vous au numéro Golang / GO # 28652.
Veuillez mettre à jour la dernière version de GRPC-Go à l'aide de go get google.golang.org/grpc .
L'enregistreur par défaut est contrôlé par des variables d'environnement. Allumez tout comme ceci:
$ export GRPC_GO_LOG_VERBOSITY_LEVEL=99
$ export GRPC_GO_LOG_SEVERITY_LEVEL=info"code = Unavailable desc = transport is closing"Cette erreur signifie que la connexion utilisée par le RPC a été fermée, et il y a de nombreuses raisons possibles, notamment:
Il peut être difficile de déboguer car l'erreur se produit du côté client, mais la cause profonde de la connexion fermée est du côté du serveur. Allumez la connexion sur le client et le serveur et voyez s'il y a des erreurs de transport.