grpc: google.golang.org/grpc/balancer/grpclb/grpc_lb_v1 Index | Files

package grpc_lb_v1

import "google.golang.org/grpc/balancer/grpclb/grpc_lb_v1"

Index

Package Files

load_balancer.pb.go

func RegisterLoadBalancerServer Uses

func RegisterLoadBalancerServer(s *grpc.Server, srv LoadBalancerServer)

type ClientStats Uses

type ClientStats struct {
    // The timestamp of generating the report.
    Timestamp *timestamp.Timestamp `protobuf:"bytes,1,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
    // The total number of RPCs that started.
    NumCallsStarted int64 `protobuf:"varint,2,opt,name=num_calls_started,json=numCallsStarted,proto3" json:"num_calls_started,omitempty"`
    // The total number of RPCs that finished.
    NumCallsFinished int64 `protobuf:"varint,3,opt,name=num_calls_finished,json=numCallsFinished,proto3" json:"num_calls_finished,omitempty"`
    // The total number of RPCs that failed to reach a server except dropped RPCs.
    NumCallsFinishedWithClientFailedToSend int64 `protobuf:"varint,6,opt,name=num_calls_finished_with_client_failed_to_send,json=numCallsFinishedWithClientFailedToSend,proto3" json:"num_calls_finished_with_client_failed_to_send,omitempty"`
    // The total number of RPCs that finished and are known to have been received
    // by a server.
    NumCallsFinishedKnownReceived int64 `protobuf:"varint,7,opt,name=num_calls_finished_known_received,json=numCallsFinishedKnownReceived,proto3" json:"num_calls_finished_known_received,omitempty"`
    // The list of dropped calls.
    CallsFinishedWithDrop []*ClientStatsPerToken `protobuf:"bytes,8,rep,name=calls_finished_with_drop,json=callsFinishedWithDrop,proto3" json:"calls_finished_with_drop,omitempty"`
    XXX_NoUnkeyedLiteral  struct{}               `json:"-"`
    XXX_unrecognized      []byte                 `json:"-"`
    XXX_sizecache         int32                  `json:"-"`
}

Contains client level statistics that are useful to load balancing. Each count except the timestamp should be reset to zero after reporting the stats.

func (*ClientStats) Descriptor Uses

func (*ClientStats) Descriptor() ([]byte, []int)

func (*ClientStats) GetCallsFinishedWithDrop Uses

func (m *ClientStats) GetCallsFinishedWithDrop() []*ClientStatsPerToken

func (*ClientStats) GetNumCallsFinished Uses

func (m *ClientStats) GetNumCallsFinished() int64

func (*ClientStats) GetNumCallsFinishedKnownReceived Uses

func (m *ClientStats) GetNumCallsFinishedKnownReceived() int64

func (*ClientStats) GetNumCallsFinishedWithClientFailedToSend Uses

func (m *ClientStats) GetNumCallsFinishedWithClientFailedToSend() int64

func (*ClientStats) GetNumCallsStarted Uses

func (m *ClientStats) GetNumCallsStarted() int64

func (*ClientStats) GetTimestamp Uses

func (m *ClientStats) GetTimestamp() *timestamp.Timestamp

func (*ClientStats) ProtoMessage Uses

func (*ClientStats) ProtoMessage()

func (*ClientStats) Reset Uses

func (m *ClientStats) Reset()

func (*ClientStats) String Uses

func (m *ClientStats) String() string

func (*ClientStats) XXX_DiscardUnknown Uses

func (m *ClientStats) XXX_DiscardUnknown()

func (*ClientStats) XXX_Marshal Uses

func (m *ClientStats) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ClientStats) XXX_Merge Uses

func (dst *ClientStats) XXX_Merge(src proto.Message)

func (*ClientStats) XXX_Size Uses

func (m *ClientStats) XXX_Size() int

func (*ClientStats) XXX_Unmarshal Uses

func (m *ClientStats) XXX_Unmarshal(b []byte) error

type ClientStatsPerToken Uses

type ClientStatsPerToken struct {
    // See Server.load_balance_token.
    LoadBalanceToken string `protobuf:"bytes,1,opt,name=load_balance_token,json=loadBalanceToken,proto3" json:"load_balance_token,omitempty"`
    // The total number of RPCs that finished associated with the token.
    NumCalls             int64    `protobuf:"varint,2,opt,name=num_calls,json=numCalls,proto3" json:"num_calls,omitempty"`
    XXX_NoUnkeyedLiteral struct{} `json:"-"`
    XXX_unrecognized     []byte   `json:"-"`
    XXX_sizecache        int32    `json:"-"`
}

Contains the number of calls finished for a particular load balance token.

func (*ClientStatsPerToken) Descriptor Uses

func (*ClientStatsPerToken) Descriptor() ([]byte, []int)

func (*ClientStatsPerToken) GetLoadBalanceToken Uses

func (m *ClientStatsPerToken) GetLoadBalanceToken() string

func (*ClientStatsPerToken) GetNumCalls Uses

func (m *ClientStatsPerToken) GetNumCalls() int64

func (*ClientStatsPerToken) ProtoMessage Uses

func (*ClientStatsPerToken) ProtoMessage()

func (*ClientStatsPerToken) Reset Uses

func (m *ClientStatsPerToken) Reset()

func (*ClientStatsPerToken) String Uses

func (m *ClientStatsPerToken) String() string

func (*ClientStatsPerToken) XXX_DiscardUnknown Uses

func (m *ClientStatsPerToken) XXX_DiscardUnknown()

func (*ClientStatsPerToken) XXX_Marshal Uses

func (m *ClientStatsPerToken) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ClientStatsPerToken) XXX_Merge Uses

func (dst *ClientStatsPerToken) XXX_Merge(src proto.Message)

func (*ClientStatsPerToken) XXX_Size Uses

func (m *ClientStatsPerToken) XXX_Size() int

func (*ClientStatsPerToken) XXX_Unmarshal Uses

func (m *ClientStatsPerToken) XXX_Unmarshal(b []byte) error

type InitialLoadBalanceRequest Uses

type InitialLoadBalanceRequest struct {
    // The name of the load balanced service (e.g., service.googleapis.com). Its
    // length should be less than 256 bytes.
    // The name might include a port number. How to handle the port number is up
    // to the balancer.
    Name                 string   `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
    XXX_NoUnkeyedLiteral struct{} `json:"-"`
    XXX_unrecognized     []byte   `json:"-"`
    XXX_sizecache        int32    `json:"-"`
}

func (*InitialLoadBalanceRequest) Descriptor Uses

func (*InitialLoadBalanceRequest) Descriptor() ([]byte, []int)

func (*InitialLoadBalanceRequest) GetName Uses

func (m *InitialLoadBalanceRequest) GetName() string

func (*InitialLoadBalanceRequest) ProtoMessage Uses

func (*InitialLoadBalanceRequest) ProtoMessage()

func (*InitialLoadBalanceRequest) Reset Uses

func (m *InitialLoadBalanceRequest) Reset()

func (*InitialLoadBalanceRequest) String Uses

func (m *InitialLoadBalanceRequest) String() string

func (*InitialLoadBalanceRequest) XXX_DiscardUnknown Uses

func (m *InitialLoadBalanceRequest) XXX_DiscardUnknown()

func (*InitialLoadBalanceRequest) XXX_Marshal Uses

func (m *InitialLoadBalanceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*InitialLoadBalanceRequest) XXX_Merge Uses

func (dst *InitialLoadBalanceRequest) XXX_Merge(src proto.Message)

func (*InitialLoadBalanceRequest) XXX_Size Uses

func (m *InitialLoadBalanceRequest) XXX_Size() int

func (*InitialLoadBalanceRequest) XXX_Unmarshal Uses

func (m *InitialLoadBalanceRequest) XXX_Unmarshal(b []byte) error

type InitialLoadBalanceResponse Uses

type InitialLoadBalanceResponse struct {
    // This is an application layer redirect that indicates the client should use
    // the specified server for load balancing. When this field is non-empty in
    // the response, the client should open a separate connection to the
    // load_balancer_delegate and call the BalanceLoad method. Its length should
    // be less than 64 bytes.
    LoadBalancerDelegate string `protobuf:"bytes,1,opt,name=load_balancer_delegate,json=loadBalancerDelegate,proto3" json:"load_balancer_delegate,omitempty"`
    // This interval defines how often the client should send the client stats
    // to the load balancer. Stats should only be reported when the duration is
    // positive.
    ClientStatsReportInterval *duration.Duration `protobuf:"bytes,2,opt,name=client_stats_report_interval,json=clientStatsReportInterval,proto3" json:"client_stats_report_interval,omitempty"`
    XXX_NoUnkeyedLiteral      struct{}           `json:"-"`
    XXX_unrecognized          []byte             `json:"-"`
    XXX_sizecache             int32              `json:"-"`
}

func (*InitialLoadBalanceResponse) Descriptor Uses

func (*InitialLoadBalanceResponse) Descriptor() ([]byte, []int)

func (*InitialLoadBalanceResponse) GetClientStatsReportInterval Uses

func (m *InitialLoadBalanceResponse) GetClientStatsReportInterval() *duration.Duration

func (*InitialLoadBalanceResponse) GetLoadBalancerDelegate Uses

func (m *InitialLoadBalanceResponse) GetLoadBalancerDelegate() string

func (*InitialLoadBalanceResponse) ProtoMessage Uses

func (*InitialLoadBalanceResponse) ProtoMessage()

func (*InitialLoadBalanceResponse) Reset Uses

func (m *InitialLoadBalanceResponse) Reset()

func (*InitialLoadBalanceResponse) String Uses

func (m *InitialLoadBalanceResponse) String() string

func (*InitialLoadBalanceResponse) XXX_DiscardUnknown Uses

func (m *InitialLoadBalanceResponse) XXX_DiscardUnknown()

func (*InitialLoadBalanceResponse) XXX_Marshal Uses

func (m *InitialLoadBalanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*InitialLoadBalanceResponse) XXX_Merge Uses

func (dst *InitialLoadBalanceResponse) XXX_Merge(src proto.Message)

func (*InitialLoadBalanceResponse) XXX_Size Uses

func (m *InitialLoadBalanceResponse) XXX_Size() int

func (*InitialLoadBalanceResponse) XXX_Unmarshal Uses

func (m *InitialLoadBalanceResponse) XXX_Unmarshal(b []byte) error

type LoadBalanceRequest Uses

type LoadBalanceRequest struct {
    // Types that are valid to be assigned to LoadBalanceRequestType:
    //	*LoadBalanceRequest_InitialRequest
    //	*LoadBalanceRequest_ClientStats
    LoadBalanceRequestType isLoadBalanceRequest_LoadBalanceRequestType `protobuf_oneof:"load_balance_request_type"`
    XXX_NoUnkeyedLiteral   struct{}                                    `json:"-"`
    XXX_unrecognized       []byte                                      `json:"-"`
    XXX_sizecache          int32                                       `json:"-"`
}

func (*LoadBalanceRequest) Descriptor Uses

func (*LoadBalanceRequest) Descriptor() ([]byte, []int)

func (*LoadBalanceRequest) GetClientStats Uses

func (m *LoadBalanceRequest) GetClientStats() *ClientStats

func (*LoadBalanceRequest) GetInitialRequest Uses

func (m *LoadBalanceRequest) GetInitialRequest() *InitialLoadBalanceRequest

func (*LoadBalanceRequest) GetLoadBalanceRequestType Uses

func (m *LoadBalanceRequest) GetLoadBalanceRequestType() isLoadBalanceRequest_LoadBalanceRequestType

func (*LoadBalanceRequest) ProtoMessage Uses

func (*LoadBalanceRequest) ProtoMessage()

func (*LoadBalanceRequest) Reset Uses

func (m *LoadBalanceRequest) Reset()

func (*LoadBalanceRequest) String Uses

func (m *LoadBalanceRequest) String() string

func (*LoadBalanceRequest) XXX_DiscardUnknown Uses

func (m *LoadBalanceRequest) XXX_DiscardUnknown()

func (*LoadBalanceRequest) XXX_Marshal Uses

func (m *LoadBalanceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*LoadBalanceRequest) XXX_Merge Uses

func (dst *LoadBalanceRequest) XXX_Merge(src proto.Message)

func (*LoadBalanceRequest) XXX_OneofFuncs Uses

func (*LoadBalanceRequest) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*LoadBalanceRequest) XXX_Size Uses

func (m *LoadBalanceRequest) XXX_Size() int

func (*LoadBalanceRequest) XXX_Unmarshal Uses

func (m *LoadBalanceRequest) XXX_Unmarshal(b []byte) error

type LoadBalanceRequest_ClientStats Uses

type LoadBalanceRequest_ClientStats struct {
    ClientStats *ClientStats `protobuf:"bytes,2,opt,name=client_stats,json=clientStats,proto3,oneof"`
}

type LoadBalanceRequest_InitialRequest Uses

type LoadBalanceRequest_InitialRequest struct {
    InitialRequest *InitialLoadBalanceRequest `protobuf:"bytes,1,opt,name=initial_request,json=initialRequest,proto3,oneof"`
}

type LoadBalanceResponse Uses

type LoadBalanceResponse struct {
    // Types that are valid to be assigned to LoadBalanceResponseType:
    //	*LoadBalanceResponse_InitialResponse
    //	*LoadBalanceResponse_ServerList
    LoadBalanceResponseType isLoadBalanceResponse_LoadBalanceResponseType `protobuf_oneof:"load_balance_response_type"`
    XXX_NoUnkeyedLiteral    struct{}                                      `json:"-"`
    XXX_unrecognized        []byte                                        `json:"-"`
    XXX_sizecache           int32                                         `json:"-"`
}

func (*LoadBalanceResponse) Descriptor Uses

func (*LoadBalanceResponse) Descriptor() ([]byte, []int)

func (*LoadBalanceResponse) GetInitialResponse Uses

func (m *LoadBalanceResponse) GetInitialResponse() *InitialLoadBalanceResponse

func (*LoadBalanceResponse) GetLoadBalanceResponseType Uses

func (m *LoadBalanceResponse) GetLoadBalanceResponseType() isLoadBalanceResponse_LoadBalanceResponseType

func (*LoadBalanceResponse) GetServerList Uses

func (m *LoadBalanceResponse) GetServerList() *ServerList

func (*LoadBalanceResponse) ProtoMessage Uses

func (*LoadBalanceResponse) ProtoMessage()

func (*LoadBalanceResponse) Reset Uses

func (m *LoadBalanceResponse) Reset()

func (*LoadBalanceResponse) String Uses

func (m *LoadBalanceResponse) String() string

func (*LoadBalanceResponse) XXX_DiscardUnknown Uses

func (m *LoadBalanceResponse) XXX_DiscardUnknown()

func (*LoadBalanceResponse) XXX_Marshal Uses

func (m *LoadBalanceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*LoadBalanceResponse) XXX_Merge Uses

func (dst *LoadBalanceResponse) XXX_Merge(src proto.Message)

func (*LoadBalanceResponse) XXX_OneofFuncs Uses

func (*LoadBalanceResponse) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

func (*LoadBalanceResponse) XXX_Size Uses

func (m *LoadBalanceResponse) XXX_Size() int

func (*LoadBalanceResponse) XXX_Unmarshal Uses

func (m *LoadBalanceResponse) XXX_Unmarshal(b []byte) error

type LoadBalanceResponse_InitialResponse Uses

type LoadBalanceResponse_InitialResponse struct {
    InitialResponse *InitialLoadBalanceResponse `protobuf:"bytes,1,opt,name=initial_response,json=initialResponse,proto3,oneof"`
}

type LoadBalanceResponse_ServerList Uses

type LoadBalanceResponse_ServerList struct {
    ServerList *ServerList `protobuf:"bytes,2,opt,name=server_list,json=serverList,proto3,oneof"`
}

type LoadBalancerClient Uses

type LoadBalancerClient interface {
    // Bidirectional rpc to get a list of servers.
    BalanceLoad(ctx context.Context, opts ...grpc.CallOption) (LoadBalancer_BalanceLoadClient, error)
}

LoadBalancerClient is the client API for LoadBalancer service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewLoadBalancerClient Uses

func NewLoadBalancerClient(cc *grpc.ClientConn) LoadBalancerClient

type LoadBalancerServer Uses

type LoadBalancerServer interface {
    // Bidirectional rpc to get a list of servers.
    BalanceLoad(LoadBalancer_BalanceLoadServer) error
}

LoadBalancerServer is the server API for LoadBalancer service.

type LoadBalancer_BalanceLoadClient Uses

type LoadBalancer_BalanceLoadClient interface {
    Send(*LoadBalanceRequest) error
    Recv() (*LoadBalanceResponse, error)
    grpc.ClientStream
}

type LoadBalancer_BalanceLoadServer Uses

type LoadBalancer_BalanceLoadServer interface {
    Send(*LoadBalanceResponse) error
    Recv() (*LoadBalanceRequest, error)
    grpc.ServerStream
}

type Server Uses

type Server struct {
    // A resolved address for the server, serialized in network-byte-order. It may
    // either be an IPv4 or IPv6 address.
    IpAddress []byte `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
    // A resolved port number for the server.
    Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
    // An opaque but printable token for load reporting. The client must include
    // the token of the picked server into the initial metadata when it starts a
    // call to that server. The token is used by the server to verify the request
    // and to allow the server to report load to the gRPC LB system. The token is
    // also used in client stats for reporting dropped calls.
    //
    // Its length can be variable but must be less than 50 bytes.
    LoadBalanceToken string `protobuf:"bytes,3,opt,name=load_balance_token,json=loadBalanceToken,proto3" json:"load_balance_token,omitempty"`
    // Indicates whether this particular request should be dropped by the client.
    // If the request is dropped, there will be a corresponding entry in
    // ClientStats.calls_finished_with_drop.
    Drop                 bool     `protobuf:"varint,4,opt,name=drop,proto3" json:"drop,omitempty"`
    XXX_NoUnkeyedLiteral struct{} `json:"-"`
    XXX_unrecognized     []byte   `json:"-"`
    XXX_sizecache        int32    `json:"-"`
}

Contains server information. When the drop field is not true, use the other fields.

func (*Server) Descriptor Uses

func (*Server) Descriptor() ([]byte, []int)

func (*Server) GetDrop Uses

func (m *Server) GetDrop() bool

func (*Server) GetIpAddress Uses

func (m *Server) GetIpAddress() []byte

func (*Server) GetLoadBalanceToken Uses

func (m *Server) GetLoadBalanceToken() string

func (*Server) GetPort Uses

func (m *Server) GetPort() int32

func (*Server) ProtoMessage Uses

func (*Server) ProtoMessage()

func (*Server) Reset Uses

func (m *Server) Reset()

func (*Server) String Uses

func (m *Server) String() string

func (*Server) XXX_DiscardUnknown Uses

func (m *Server) XXX_DiscardUnknown()

func (*Server) XXX_Marshal Uses

func (m *Server) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*Server) XXX_Merge Uses

func (dst *Server) XXX_Merge(src proto.Message)

func (*Server) XXX_Size Uses

func (m *Server) XXX_Size() int

func (*Server) XXX_Unmarshal Uses

func (m *Server) XXX_Unmarshal(b []byte) error

type ServerList Uses

type ServerList struct {
    // Contains a list of servers selected by the load balancer. The list will
    // be updated when server resolutions change or as needed to balance load
    // across more servers. The client should consume the server list in order
    // unless instructed otherwise via the client_config.
    Servers              []*Server `protobuf:"bytes,1,rep,name=servers,proto3" json:"servers,omitempty"`
    XXX_NoUnkeyedLiteral struct{}  `json:"-"`
    XXX_unrecognized     []byte    `json:"-"`
    XXX_sizecache        int32     `json:"-"`
}

func (*ServerList) Descriptor Uses

func (*ServerList) Descriptor() ([]byte, []int)

func (*ServerList) GetServers Uses

func (m *ServerList) GetServers() []*Server

func (*ServerList) ProtoMessage Uses

func (*ServerList) ProtoMessage()

func (*ServerList) Reset Uses

func (m *ServerList) Reset()

func (*ServerList) String Uses

func (m *ServerList) String() string

func (*ServerList) XXX_DiscardUnknown Uses

func (m *ServerList) XXX_DiscardUnknown()

func (*ServerList) XXX_Marshal Uses

func (m *ServerList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ServerList) XXX_Merge Uses

func (dst *ServerList) XXX_Merge(src proto.Message)

func (*ServerList) XXX_Size Uses

func (m *ServerList) XXX_Size() int

func (*ServerList) XXX_Unmarshal Uses

func (m *ServerList) XXX_Unmarshal(b []byte) error

Package grpc_lb_v1 imports 7 packages (graph) and is imported by 3 packages. Updated 2018-08-03. Refresh now. Tools for package owners.