commit | c3df40279cb6df84a41fdcf3f1c800d626271510 | [log] [tgz] |
---|---|---|
author | MakMukhi <mmukhi@google.com> | Thu Mar 23 10:49:38 2017 -0700 |
committer | GitHub <noreply@github.com> | Thu Mar 23 10:49:38 2017 -0700 |
tree | ae33dd31f62a3fcfb8231aaeb81d3fed3897465a | |
parent | 9d8d0c6e0adb3d7c146b19862b50ff1541a1b9cd [diff] | |
parent | d9541d7591265dc9d2f07848e2a198adf1ba66e4 [diff] |
Support max age(#1119) The new logic added to the server does the following: - Gracefully closes an idle connection after a duration of keepalive.MaxConnectionIdle. - Gracefully closes any connection after a duration of keepalive.MaxConnectionAge. - Forcibly closes a connection after an additive period of keepalive.MaxConnectionAgeGrace over keepalive.MaxConnectionAge. - Makes sure a connection is alive by sending pings with a frequency of keepalive.Time and closes a non-resposive connection after an additional duration of keepalive.Timeout.
#gRPC-Go
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 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 google.golang.org/grpc
This requires Go 1.5 or later.
A note on the version used: significant performance improvements in benchmarks of grpc-go have been seen by upgrading the go version from 1.5 to the latest 1.7.1.
From https://golang.org/doc/install, one way to install the latest version of go is:
$ GO_VERSION=1.7.1 $ OS=linux $ ARCH=amd64 $ curl -O https://storage.googleapis.com/golang/go${GO_VERSION}.${OS}-${ARCH}.tar.gz $ sudo tar -C /usr/local -xzf go$GO_VERSION.$OS-$ARCH.tar.gz $ # Put go on the PATH, keep the usual installation dir $ sudo ln -s /usr/local/go/bin/go /usr/bin/go $ rm go$GO_VERSION.$OS-$ARCH.tar.gz
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.
GA
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