A implementação GO do GRPC: uma estrutura de RPC de alto desempenho, código aberto e RPC que coloca em primeiro lugar móvel e http/2. Para obter mais informações, consulte os documentos GO GRPC ou entre diretamente para o início rápido.
Basta adicionar a seguinte importação ao seu código e, em seguida, go [build|run|test] buscará automaticamente as dependências necessárias:
import "google.golang.org/grpc"Nota: Se você estiver tentando acessar
grpc-goda China , consulte as perguntas frequentes abaixo.
O domínio golang.org pode estar bloqueado de alguns países. go get geralmente produz um erro como o seguinte quando isso acontecer:
$ 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)Para construir o código GO, existem várias opções:
Configure uma VPN e acesse o google.golang.org por isso.
Com o suporte do módulo GO: é possível usar o recurso replace o go mod para criar aliases para pacotes Golang.org. No diretório do seu projeto:
go mod edit -replace=google.golang.org/grpc=github.com/grpc/grpc-go@latest
go mod tidy
go mod vendor
go build -mod=vendorNovamente, isso precisará ser feito para todas as dependências transitivas hospedadas no Golang.org também. Para detalhes, consulte a edição Golang/Go #28652.
Atualize a versão mais recente do GRPC-GO Usando, go get google.golang.org/grpc .
O logger padrão é controlado por variáveis de ambiente. Ligue tudo assim:
$ export GRPC_GO_LOG_VERBOSITY_LEVEL=99
$ export GRPC_GO_LOG_SEVERITY_LEVEL=info"code = Unavailable desc = transport is closing"Este erro significa que a conexão que o RPC está usando foi fechada e há muitos motivos possíveis, incluindo:
Pode ser complicado depurar isso porque o erro acontece no lado do cliente, mas a causa raiz da conexão fechada está no lado do servidor. Ligue o log no cliente e no servidor e veja se existem erros de transporte.