Back to godoc.org
google.golang.org/grpc

package grpc

v1.29.1
Latest Go to latest
Published: Apr 23, 2020 | License: Apache-2.0 | Module: google.golang.org/grpc
Path Synopsis
attributes Package attributes defines a generic key/value store used in various gRPC components.
backoff Package backoff provides configuration options for backoff.
balancer Package balancer defines APIs for load balancing in gRPC.
balancer/base Package base defines a balancer base that can be used to build balancers with different picking algorithms.
balancer/grpclb Package grpclb defines a grpclb balancer.
balancer/grpclb/grpc_lb_v1
balancer/rls/internal Package rls implements the RLS LB policy.
balancer/rls/internal/adaptive Package adaptive provides functionality for adaptive client-side throttling.
balancer/rls/internal/cache Package cache provides an LRU cache implementation to be used by the RLS LB policy to cache RLS response data.
balancer/rls/internal/keys Package keys provides functionality required to build RLS request keys.
balancer/rls/internal/proto/grpc_lookup_v1
balancer/rls/internal/testutils/fakeserver Package fakeserver provides a fake implementation of the RouteLookupService, to be used in unit tests.
balancer/roundrobin Package roundrobin defines a roundrobin balancer.
balancer/weightedroundrobin Package weightedroundrobin defines a weighted roundrobin balancer.
benchmark Package benchmark implements the building blocks to setup end-to-end gRPC benchmarks.
benchmark/benchmain Package main provides benchmark with setting flags.
benchmark/benchresult To format the benchmark result: go run benchmark/benchresult/main.go resultfile To see the performance change based on a old result: go run benchmark/benchresult/main.go resultfile_old resultfile It will print the comparison result of intersection benchmarks between two files.
benchmark/client Package main provides a client used for benchmarking.
benchmark/flags Package flags provide convenience types and routines to accept specific types of flag values on the command line.
benchmark/grpc_testing
benchmark/latency Package latency provides wrappers for net.Conn, net.Listener, and net.Dialers, designed to interoperate to inject real-world latency into network connections.
benchmark/server Package main provides a server used for benchmarking.
benchmark/stats Package stats tracks the statistics associated with benchmark runs.
benchmark/worker
binarylog/grpc_binarylog_v1
channelz/grpc_channelz_v1
channelz/service Package service provides an implementation for channelz service server.
codes Package codes defines the canonical error codes used by gRPC.
connectivity Package connectivity defines connectivity semantics.
credentials Package credentials implements various credentials supported by gRPC library, which encapsulate all the state needed by a client to authenticate with a server and make various assertions, e.g., about the client's identity, role, or whether it is authorized to make a particular call.
credentials/alts Package alts implements the ALTS credential support by gRPC library, which encapsulates all the state needed by a client to authenticate with a server using ALTS and make various assertions, e.g., about the client's identity, role, or whether it is authorized to make a particular call.
credentials/alts/internal Package internal contains common core functionality for ALTS.
credentials/alts/internal/authinfo Package authinfo provide authentication information returned by handshakers.
credentials/alts/internal/conn Package conn contains an implementation of a secure channel created by gRPC handshakers.
credentials/alts/internal/handshaker Package handshaker provides ALTS handshaking functionality for GCP.
credentials/alts/internal/handshaker/service Package service manages connections between the VM application and the ALTS handshaker service.
credentials/alts/internal/proto/grpc_gcp
credentials/alts/internal/testutil Package testutil include useful test utilities for the handshaker.
credentials/google Package google defines credentials for google cloud services.
credentials/internal Package internal contains credentials-internal code.
credentials/oauth Package oauth implements gRPC credentials using OAuth.
encoding Package encoding defines the interface for the compressor and codec, and functions to register and retrieve compressors and codecs.
encoding/gzip Package gzip implements and registers the gzip compressor during the initialization.
encoding/proto Package proto defines the protobuf codec.
examples/features/authentication/client The client demonstrates how to supply an OAuth2 token for every RPC.
examples/features/authentication/server The server demonstrates how to consume and validate OAuth2 tokens provided by clients for each RPC.
examples/features/cancellation/client Binary client is an example client.
examples/features/cancellation/server Binary server is an example server.
examples/features/compression/client Binary client is an example client.
examples/features/compression/server Binary server is an example server.
examples/features/deadline/client Binary client is an example client.
examples/features/deadline/server Binary server is an example server.
examples/features/debugging/client Binary client is an example client.
examples/features/debugging/server Binary server is an example server.
examples/features/encryption/ALTS/client Binary client is an example client.
examples/features/encryption/ALTS/server Binary server is an example server.
examples/features/encryption/TLS/client Binary client is an example client.
examples/features/encryption/TLS/server Binary server is an example server.
examples/features/errors/client Binary client is an example client.
examples/features/errors/server Binary server is an example server.
examples/features/health/client
examples/features/health/server
examples/features/interceptor/client Binary client is an example client.
examples/features/interceptor/server Binary server is an example server.
examples/features/keepalive/client Binary client is an example client.
examples/features/keepalive/server Binary server is an example server.
examples/features/load_balancing/client Binary client is an example client.
examples/features/load_balancing/server Binary server is an example server.
examples/features/metadata/client Binary client is an example client.
examples/features/metadata/server Binary server is an example server.
examples/features/multiplex/client Binary client is an example client.
examples/features/multiplex/server Binary server is an example server.
examples/features/name_resolving/client Binary client is an example client.
examples/features/name_resolving/server Binary server is an example server.
examples/features/profiling/client Binary client is an example client.
examples/features/profiling/server Binary server is an example server.
examples/features/proto Package proto is for go generate.
examples/features/proto/echo
examples/features/reflection/server Binary server is an example server.
examples/features/retry/client Binary client is an example client.
examples/features/retry/server Binary server is an example server.
examples/features/wait_for_ready Binary wait_for_ready is an example for "wait for ready".
examples/features/xds/client Package main implements a client for Greeter service.
examples/features/xds/server Package main starts Greeter service that will response with the hostname.
examples/helloworld/greeter_client Package main implements a client for Greeter service.
examples/helloworld/greeter_server Package main implements a server for Greeter service.
examples/helloworld/helloworld
examples/helloworld/mock_helloworld
examples/route_guide/client Package main implements a simple gRPC client that demonstrates how to use gRPC-Go libraries to perform unary, client streaming, server streaming and full duplex RPCs.
examples/route_guide/mock_routeguide
examples/route_guide/routeguide
examples/route_guide/server Package main implements a simple gRPC server that demonstrates how to use gRPC-Go libraries to perform unary, client streaming, server streaming and full duplex RPCs.
grpclog Package grpclog defines logging for grpc.
grpclog/glogger Package glogger defines glog-based logging for grpc.
health Package health provides a service that exposes server's health and it must be imported to enable support for client-side health checks.
health/grpc_health_v1
internal Package internal contains gRPC-internal code, to avoid polluting the godoc of the top-level grpc package.
internal/backoff Package backoff implement the backoff strategy for gRPC.
internal/balancerload Package balancerload defines APIs to parse server loads in trailers.
internal/binarylog Package binarylog implementation binary logging as defined in https://github.com/grpc/proposal/blob/master/A16-binary-logging.md.
internal/buffer Package buffer provides an implementation of an unbounded buffer.
internal/cache Package cache implements caches to be used in gRPC.
internal/channelz Package channelz defines APIs for enabling channelz service, entry registration/deletion, and accessing channelz data.
internal/envconfig Package envconfig contains grpc settings configured by environment variables.
internal/grpclog Package grpclog (internal) defines depth logging for grpc.
internal/grpcrand Package grpcrand implements math/rand functions in a concurrent-safe way with a global random source, independent of math/rand's global source.
internal/grpcsync Package grpcsync implements additional synchronization primitives built upon the sync package.
internal/grpctest Package grpctest implements testing helpers.
internal/grpcutil Package grpcutil provides a bunch of utility functions to be used across the gRPC codebase.
internal/leakcheck Package leakcheck contains functions to check leaked goroutines.
internal/profiling Package profiling contains two logical components: buffer.go and profiling.go.
internal/profiling/buffer Package buffer provides a high-performant lock free implementation of a circular buffer used by the profiling code.
internal/proto/grpc_service_config
internal/resolver/dns Package dns implements a dns resolver to be installed as the default resolver in grpc.
internal/resolver/passthrough Package passthrough implements a pass-through resolver.
internal/status Package status implements errors returned by gRPC.
internal/syscall Package syscall provides functionalities that grpc uses to get low-level operating system stats/info.
internal/testutils Package testutils contains testing helpers.
internal/transport Package transport defines and implements message oriented communication channel to complete various transactions (e.g., an RPC).
internal/wrr
interop
interop/alts/client This binary can only run on Google Cloud Platform (GCP).
interop/alts/server This binary can only run on Google Cloud Platform (GCP).
interop/client
interop/fake_grpclb This file is for testing only.
interop/grpc_testing
interop/grpclb_fallback
interop/http2
interop/server
interop/xds/client Binary client for xDS interop tests.
interop/xds/server Binary server for xDS interop tests.
keepalive Package keepalive defines configurable parameters for point-to-point healthcheck.
metadata Package metadata define the structure of the metadata supported by gRPC library.
naming Package naming defines the naming API and related data structures for gRPC.
peer Package peer defines various peer information associated with RPCs and corresponding utils.
profiling Package profiling exposes methods to manage profiling within gRPC.
profiling/cmd Binary cmd is a command-line tool for profiling management.
profiling/proto
profiling/service Package service defines methods to register a gRPC client/service for a profiling service that is exposed in the same server.
reflection Package reflection implements server reflection service.
reflection/grpc_reflection_v1alpha
reflection/grpc_testing
reflection/grpc_testingv3 Package grpc_testingv3 is a generated protocol buffer package.
resolver Package resolver defines APIs for name resolution in gRPC.
resolver/dns Package dns implements a dns resolver to be installed as the default resolver in grpc.
resolver/manual Package manual defines a resolver that can be used to manually send resolved addresses to ClientConn.
resolver/passthrough Package passthrough implements a pass-through resolver.
serviceconfig Package serviceconfig defines types and methods for operating on gRPC service configs.
stats Package stats is for collecting and reporting various network and RPC stats.
stats/grpc_testing
status Package status implements errors returned by gRPC.
stress/client client starts an interop client to do stress test and a metrics server to report qps.
stress/grpc_testing
stress/metrics_client
tap Package tap defines the function handles which are executed on the transport layer of gRPC-Go and related information.
test
test/bufconn Package bufconn provides a net.Conn implemented by a buffer and related dialing and listening functionality.
test/codec_perf
test/go_vet vet checks whether files that are supposed to be built on appengine running Go 1.10 or earlier import an unsupported package (e.g.
test/grpc_testing
xds/experimental Package experimental contains xds implementation, still in experimental state.
xds/internal
xds/internal/balancer Package balancer installs all the xds balancers.
xds/internal/balancer/balancergroup Package balancergroup implements a utility struct to bind multiple balancers into one balancer.
xds/internal/balancer/cdsbalancer Package cdsbalancer implements a balancer to handle CDS responses.
xds/internal/balancer/edsbalancer Package edsbalancer contains EDS balancer implementation.
xds/internal/balancer/lrs Package lrs implements load reporting service for xds balancer.
xds/internal/balancer/orca Package orca implements Open Request Cost Aggregation.
xds/internal/client Package client implementation a full fledged gRPC client for the xDS API used by the xds resolver and balancer implementations.
xds/internal/client/bootstrap Package bootstrap provides the functionality to initialize certain aspects of an xDS client by reading a bootstrap file.
xds/internal/resolver Package resolver implements the xds resolver, that does LDS and RDS to find the cluster to use.
xds/internal/testutils Package testutils provides utility types, for use in xds tests.
xds/internal/testutils/fakeclient Package fakeclient provides a fake implementation of an xDS client.
xds/internal/testutils/fakeserver Package fakeserver provides a fake implementation of an xDS server.