Clone this repo:
  1. 9cb02b8 latency: sleep in Write when BDP is exceeded to avoid buffer bloat (#1330) by dfawley · 2 hours ago master
  2. 77d4a9f Add documentation to deprecate WithTimeout dial option (#1333) by Menghan Li · 3 hours ago
  3. eb7b130 change objects in recvBuffer queue from interface to concrete type to reduce allocs (#1029) by apolcyn · 4 hours ago
  4. 57ff328 Catch invalid use of Server.RegisterService after Register.Serve (#828) by Peter Mattis · 8 hours ago
  5. f0c566b benchmark: add latency/MTU/bandwidth into testcases (#1304) by ZhouyihaiDing · 3 days ago


Build Status GoDoc

The Go implementation of gRPC: A high performance, open source, general RPC framework that puts mobile and HTTP/2 first. For more information see the gRPC Quick Start: Go guide.


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


This requires Go 1.6 or later.


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, you need a discussion with gRPC-Go authors and consultants.


See API documentation for package and API descriptions and find examples in the examples directory.


See the current benchmarks for some of the languages supported in this dashboard.


General Availability Google Cloud Platform Launch Stages.


Compiling error, undefined: grpc.SupportPackageIsVersion

Please update proto package, gRPC package and rebuild the proto files:

  • go get -u{proto,protoc-gen-go}
  • go get -u
  • protoc --go_out=plugins=grpc:. *.proto