Documentation ¶
Index ¶
- Constants
- func NewLoadBalancerHandler(svc LoadBalancerHandler, opts ...connect_go.HandlerOption) (string, http.Handler)
- func NewLoadReporterHandler(svc LoadReporterHandler, opts ...connect_go.HandlerOption) (string, http.Handler)
- type LoadBalancerClient
- type LoadBalancerHandler
- type LoadReporterClient
- type LoadReporterHandler
- type UnimplementedLoadBalancerHandler
- type UnimplementedLoadReporterHandler
Constants ¶
const ( // LoadBalancerBalanceLoadProcedure is the fully-qualified name of the LoadBalancer's BalanceLoad // RPC. LoadBalancerBalanceLoadProcedure = "/grpc.lb.v1.LoadBalancer/BalanceLoad" )
These constants are the fully-qualified names of the RPCs defined in this package. They're exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route.
Note that these are different from the fully-qualified method names used by google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to reflection-formatted method names, remove the leading slash and convert the remaining slash to a period.
const (
// LoadBalancerName is the fully-qualified name of the LoadBalancer service.
LoadBalancerName = "grpc.lb.v1.LoadBalancer"
)
const (
// LoadReporterName is the fully-qualified name of the LoadReporter service.
LoadReporterName = "grpc.lb.v1.LoadReporter"
)
const (
// LoadReporterReportLoadProcedure is the fully-qualified name of the LoadReporter's ReportLoad RPC.
LoadReporterReportLoadProcedure = "/grpc.lb.v1.LoadReporter/ReportLoad"
)
These constants are the fully-qualified names of the RPCs defined in this package. They're exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route.
Note that these are different from the fully-qualified method names used by google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to reflection-formatted method names, remove the leading slash and convert the remaining slash to a period.
Variables ¶
This section is empty.
Functions ¶
func NewLoadBalancerHandler ¶
func NewLoadBalancerHandler(svc LoadBalancerHandler, opts ...connect_go.HandlerOption) (string, http.Handler)
NewLoadBalancerHandler builds an HTTP handler from the service implementation. It returns the path on which to mount the handler and the handler itself.
By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf and JSON codecs. They also support gzip compression.
func NewLoadReporterHandler ¶
func NewLoadReporterHandler(svc LoadReporterHandler, opts ...connect_go.HandlerOption) (string, http.Handler)
NewLoadReporterHandler builds an HTTP handler from the service implementation. It returns the path on which to mount the handler and the handler itself.
By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf and JSON codecs. They also support gzip compression.
Types ¶
type LoadBalancerClient ¶
type LoadBalancerClient interface { // Bidirectional rpc to get a list of servers. BalanceLoad(context.Context) *connect_go.BidiStreamForClient[v1.LoadBalanceRequest, v1.LoadBalanceResponse] }
LoadBalancerClient is a client for the grpc.lb.v1.LoadBalancer service.
func NewLoadBalancerClient ¶
func NewLoadBalancerClient(httpClient connect_go.HTTPClient, baseURL string, opts ...connect_go.ClientOption) LoadBalancerClient
NewLoadBalancerClient constructs a client for the grpc.lb.v1.LoadBalancer service. By default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or connect.WithGRPCWeb() options.
The URL supplied here should be the base URL for the Connect or gRPC server (for example, http://api.acme.com or https://acme.com/grpc).
type LoadBalancerHandler ¶
type LoadBalancerHandler interface { // Bidirectional rpc to get a list of servers. BalanceLoad(context.Context, *connect_go.BidiStream[v1.LoadBalanceRequest, v1.LoadBalanceResponse]) error }
LoadBalancerHandler is an implementation of the grpc.lb.v1.LoadBalancer service.
type LoadReporterClient ¶
type LoadReporterClient interface { // Report load from server to lb. ReportLoad(context.Context) *connect_go.BidiStreamForClient[v1.LoadReportRequest, v1.LoadReportResponse] }
LoadReporterClient is a client for the grpc.lb.v1.LoadReporter service.
func NewLoadReporterClient ¶
func NewLoadReporterClient(httpClient connect_go.HTTPClient, baseURL string, opts ...connect_go.ClientOption) LoadReporterClient
NewLoadReporterClient constructs a client for the grpc.lb.v1.LoadReporter service. By default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses, and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the connect.WithGRPC() or connect.WithGRPCWeb() options.
The URL supplied here should be the base URL for the Connect or gRPC server (for example, http://api.acme.com or https://acme.com/grpc).
type LoadReporterHandler ¶
type LoadReporterHandler interface { // Report load from server to lb. ReportLoad(context.Context, *connect_go.BidiStream[v1.LoadReportRequest, v1.LoadReportResponse]) error }
LoadReporterHandler is an implementation of the grpc.lb.v1.LoadReporter service.
type UnimplementedLoadBalancerHandler ¶
type UnimplementedLoadBalancerHandler struct{}
UnimplementedLoadBalancerHandler returns CodeUnimplemented from all methods.
func (UnimplementedLoadBalancerHandler) BalanceLoad ¶
func (UnimplementedLoadBalancerHandler) BalanceLoad(context.Context, *connect_go.BidiStream[v1.LoadBalanceRequest, v1.LoadBalanceResponse]) error
type UnimplementedLoadReporterHandler ¶
type UnimplementedLoadReporterHandler struct{}
UnimplementedLoadReporterHandler returns CodeUnimplemented from all methods.
func (UnimplementedLoadReporterHandler) ReportLoad ¶
func (UnimplementedLoadReporterHandler) ReportLoad(context.Context, *connect_go.BidiStream[v1.LoadReportRequest, v1.LoadReportResponse]) error