Documentation
¶
Index ¶
- Variables
- func DefaultRoute(session *cherrySession.Session, msg RpcMsg, context RouteContextClass, ...)
- func RandomRoute(client *RPCClient, nodeType string, msg RpcMsg, cb Callback)
- func RegisterMemberNodeServer(s *grpc.Server, srv MemberNodeServer)
- func RoundRobinRoute(client *RPCClient, nodeType string, msg RpcMsg, cb Callback)
- func WeightRoundRoute(client *RPCClient, nodeType string, msg RpcMsg, cb Callback)
- type Callback
- type Component
- type ForwardMessage
- func (*ForwardMessage) Descriptor() ([]byte, []int)deprecated
- func (x *ForwardMessage) GetData() []byte
- func (x *ForwardMessage) GetId() uint64
- func (x *ForwardMessage) GetNodeId() string
- func (x *ForwardMessage) GetRoute() string
- func (x *ForwardMessage) GetSid() int64
- func (x *ForwardMessage) GetType() int32
- func (*ForwardMessage) ProtoMessage()
- func (x *ForwardMessage) ProtoReflect() protoreflect.Message
- func (x *ForwardMessage) Reset()
- func (x *ForwardMessage) String() string
- type MemberNodeClient
- type MemberNodeServer
- type NodeId
- type NodeInfo
- func (*NodeInfo) Descriptor() ([]byte, []int)deprecated
- func (x *NodeInfo) GetAddress() string
- func (x *NodeInfo) GetId() string
- func (x *NodeInfo) GetNodeType() string
- func (*NodeInfo) ProtoMessage()
- func (x *NodeInfo) ProtoReflect() protoreflect.Message
- func (x *NodeInfo) Reset()
- func (x *NodeInfo) String() string
- type NodeList
- type RPCClient
- type RPCClientOpts
- type RPCServer
- type Response
- type RouteContext
- type RouteContextClass
- type RouteNodes
- type RpcMsg
- type RpcNodeInfo
- type SessionId
- type TargetRouteFunction
- type UnimplementedMemberNodeServer
Constants ¶
This section is empty.
Variables ¶
View Source
var File_cluster_proto protoreflect.FileDescriptor
Functions ¶
func DefaultRoute ¶ added in v1.1.0
func DefaultRoute(session *cherrySession.Session, msg RpcMsg, context RouteContextClass, cb Callback)
DefaultRoute Calculate route info and return an appropriate node id.
func RandomRoute ¶ added in v1.1.0
RandomRoute Random algorithm for calculating node id.
func RegisterMemberNodeServer ¶ added in v1.1.0
func RegisterMemberNodeServer(s *grpc.Server, srv MemberNodeServer)
func RoundRobinRoute ¶ added in v1.1.0
Types ¶
type ForwardMessage ¶ added in v1.1.0
type ForwardMessage struct {
Type int32 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"`
NodeId string `protobuf:"bytes,2,opt,name=nodeId,proto3" json:"nodeId,omitempty"`
Sid int64 `protobuf:"varint,3,opt,name=sid,proto3" json:"sid,omitempty"`
Id uint64 `protobuf:"varint,4,opt,name=id,proto3" json:"id,omitempty"`
Route string `protobuf:"bytes,5,opt,name=route,proto3" json:"route,omitempty"`
Data []byte `protobuf:"bytes,6,opt,name=data,proto3" json:"data,omitempty"`
// contains filtered or unexported fields
}
func (*ForwardMessage) Descriptor
deprecated
added in
v1.1.0
func (*ForwardMessage) Descriptor() ([]byte, []int)
Deprecated: Use ForwardMessage.ProtoReflect.Descriptor instead.
func (*ForwardMessage) GetData ¶ added in v1.1.0
func (x *ForwardMessage) GetData() []byte
func (*ForwardMessage) GetId ¶ added in v1.1.0
func (x *ForwardMessage) GetId() uint64
func (*ForwardMessage) GetNodeId ¶ added in v1.1.0
func (x *ForwardMessage) GetNodeId() string
func (*ForwardMessage) GetRoute ¶ added in v1.1.0
func (x *ForwardMessage) GetRoute() string
func (*ForwardMessage) GetSid ¶ added in v1.1.0
func (x *ForwardMessage) GetSid() int64
func (*ForwardMessage) GetType ¶ added in v1.1.0
func (x *ForwardMessage) GetType() int32
func (*ForwardMessage) ProtoMessage ¶ added in v1.1.0
func (*ForwardMessage) ProtoMessage()
func (*ForwardMessage) ProtoReflect ¶ added in v1.1.0
func (x *ForwardMessage) ProtoReflect() protoreflect.Message
func (*ForwardMessage) Reset ¶ added in v1.1.0
func (x *ForwardMessage) Reset()
func (*ForwardMessage) String ¶ added in v1.1.0
func (x *ForwardMessage) String() string
type MemberNodeClient ¶ added in v1.1.0
type MemberNodeClient interface {
Forward(ctx context.Context, in *ForwardMessage, opts ...grpc.CallOption) (*Response, error)
CloseSession(ctx context.Context, in *SessionId, opts ...grpc.CallOption) (*Response, error)
}
MemberNodeClient is the client API for MemberNode service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewMemberNodeClient ¶ added in v1.1.0
func NewMemberNodeClient(cc grpc.ClientConnInterface) MemberNodeClient
type MemberNodeServer ¶ added in v1.1.0
type MemberNodeServer interface {
Forward(context.Context, *ForwardMessage) (*Response, error)
CloseSession(context.Context, *SessionId) (*Response, error)
}
MemberNodeServer is the server API for MemberNode service.
type NodeId ¶ added in v1.1.0
type NodeId struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
// contains filtered or unexported fields
}
func (*NodeId) Descriptor
deprecated
added in
v1.1.0
func (*NodeId) ProtoMessage ¶ added in v1.1.0
func (*NodeId) ProtoMessage()
func (*NodeId) ProtoReflect ¶ added in v1.1.0
func (x *NodeId) ProtoReflect() protoreflect.Message
type NodeInfo ¶ added in v1.1.0
type NodeInfo struct {
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
NodeType string `protobuf:"bytes,2,opt,name=nodeType,proto3" json:"nodeType,omitempty"`
Address string `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
// contains filtered or unexported fields
}
func (*NodeInfo) Descriptor
deprecated
added in
v1.1.0
func (*NodeInfo) GetAddress ¶ added in v1.1.0
func (*NodeInfo) GetNodeType ¶ added in v1.1.0
func (*NodeInfo) ProtoMessage ¶ added in v1.1.0
func (*NodeInfo) ProtoMessage()
func (*NodeInfo) ProtoReflect ¶ added in v1.1.0
func (x *NodeInfo) ProtoReflect() protoreflect.Message
type NodeList ¶ added in v1.1.0
type NodeList struct {
NodesInfo []*NodeInfo `protobuf:"bytes,1,rep,name=nodesInfo,proto3" json:"nodesInfo,omitempty"`
// contains filtered or unexported fields
}
func (*NodeList) Descriptor
deprecated
added in
v1.1.0
func (*NodeList) GetNodesInfo ¶ added in v1.1.0
func (*NodeList) ProtoMessage ¶ added in v1.1.0
func (*NodeList) ProtoMessage()
func (*NodeList) ProtoReflect ¶ added in v1.1.0
func (x *NodeList) ProtoReflect() protoreflect.Message
type RPCClient ¶ added in v1.1.0
type RPCClient struct {
Nodes map[string]RpcNodeInfo
NodeMap map[string][]string
RoundRobinParam map[string]int
WeightRoundParam map[string]struct {
Index int
Weight int
}
// contains filtered or unexported fields
}
func (*RPCClient) AddListener ¶ added in v1.1.0
func (*RPCClient) AddListener(listener cherryFacade.INodeListener)
func (*RPCClient) All ¶ added in v1.1.0
func (*RPCClient) All() cherryFacade.NodeMap
type RPCClientOpts ¶ added in v1.1.0
type RPCClientOpts struct {
}
type Response ¶ added in v1.1.0
type Response struct {
// contains filtered or unexported fields
}
func (*Response) Descriptor
deprecated
added in
v1.1.0
func (*Response) ProtoMessage ¶ added in v1.1.0
func (*Response) ProtoMessage()
func (*Response) ProtoReflect ¶ added in v1.1.0
func (x *Response) ProtoReflect() protoreflect.Message
type RouteContext ¶ added in v1.1.0
type RouteContext struct {
}
type RouteContextClass ¶ added in v1.1.0
type RouteContextClass interface {
GetNodesByType(nodeType string) RouteNodes
}
type RouteNodes ¶ added in v1.1.0
type RouteNodes []RpcNodeInfo
type RpcNodeInfo ¶ added in v1.1.0
type SessionId ¶ added in v1.1.0
type SessionId struct {
Sid int64 `protobuf:"varint,1,opt,name=sid,proto3" json:"sid,omitempty"`
// contains filtered or unexported fields
}
func (*SessionId) Descriptor
deprecated
added in
v1.1.0
func (*SessionId) ProtoMessage ¶ added in v1.1.0
func (*SessionId) ProtoMessage()
func (*SessionId) ProtoReflect ¶ added in v1.1.0
func (x *SessionId) ProtoReflect() protoreflect.Message
type TargetRouteFunction ¶ added in v1.1.0
type UnimplementedMemberNodeServer ¶ added in v1.1.0
type UnimplementedMemberNodeServer struct {
}
UnimplementedMemberNodeServer can be embedded to have forward compatible implementations.
func (*UnimplementedMemberNodeServer) CloseSession ¶ added in v1.1.0
func (*UnimplementedMemberNodeServer) Forward ¶ added in v1.1.0
func (*UnimplementedMemberNodeServer) Forward(context.Context, *ForwardMessage) (*Response, error)
Click to show internal directories.
Click to hide internal directories.