|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- # gRPC-Go
-
- [![Build Status](https://travis-ci.org/grpc/grpc-go.svg)](https://travis-ci.org/grpc/grpc-go) [![GoDoc](https://godoc.org/google.golang.org/grpc?status.svg)](https://godoc.org/google.golang.org/grpc) [![GoReportCard](https://goreportcard.com/badge/grpc/grpc-go)](https://goreportcard.com/report/github.com/grpc/grpc-go)
-
- The Go implementation of [gRPC](https://grpc.io/): A high performance, open source, general RPC framework that puts mobile and HTTP/2 first. For more information see the [gRPC Quick Start: Go](https://grpc.io/docs/quickstart/go.html) guide.
-
- Installation
- ------------
-
- To install this package, you need to install Go and setup your Go workspace on your computer. The simplest way to install the library is to run:
-
- ```
- $ go get -u google.golang.org/grpc
- ```
-
- Prerequisites
- -------------
-
- gRPC-Go requires Go 1.9 or later.
-
- Constraints
- -----------
- The grpc package should only depend on standard Go packages and a small number of exceptions. If your contribution introduces new dependencies which are NOT in the [list](https://godoc.org/google.golang.org/grpc?imports), you need a discussion with gRPC-Go authors and consultants.
-
- Documentation
- -------------
- See [API documentation](https://godoc.org/google.golang.org/grpc) for package and API descriptions and find examples in the [examples directory](examples/).
-
- Performance
- -----------
- See the current benchmarks for some of the languages supported in [this dashboard](https://performance-dot-grpc-testing.appspot.com/explore?dashboard=5652536396611584&widget=490377658&container=1286539696).
-
- Status
- ------
- General Availability [Google Cloud Platform Launch Stages](https://cloud.google.com/terms/launch-stages).
-
- FAQ
- ---
-
- #### Compiling error, undefined: grpc.SupportPackageIsVersion
-
- Please update proto package, gRPC package and rebuild the proto files:
- - `go get -u github.com/golang/protobuf/{proto,protoc-gen-go}`
- - `go get -u google.golang.org/grpc`
- - `protoc --go_out=plugins=grpc:. *.proto`
-
- #### How to turn on logging
-
- The default logger is controlled by the environment variables. Turn everything
- on by setting:
-
- ```
- GRPC_GO_LOG_VERBOSITY_LEVEL=99 GRPC_GO_LOG_SEVERITY_LEVEL=info
- ```
-
- #### The RPC failed with error `"code = Unavailable desc = transport is closing"`
-
- This error means the connection the RPC is using was closed, and there are many
- possible reasons, including:
- 1. mis-configured transport credentials, connection failed on handshaking
- 1. bytes disrupted, possibly by a proxy in between
- 1. server shutdown
-
- It can be tricky to debug this because the error happens on the client side but
- the root cause of the connection being closed is on the server side. Turn on
- logging on __both client and server__, and see if there are any transport
- errors.
|