Documentation ¶
Index ¶
- func NewMember(name string, host string, port int) proto.IMember
- func NewMemberManager(localName, ServiceName string, localIp string, port int, ...) (proto.IMemberManager, error)
- type IMemberSync
- type IProxyRequest
- type IProxyResponse
- type ISyncRequest
- type ISyncResponse
- type Member
- func (m *Member) Call(rpcname string, args interface{}, reply interface{}) error
- func (m *Member) GetName() string
- func (m *Member) GetState() int
- func (m *Member) GetTermId() int64
- func (m *Member) Marshal() ([]byte, error)
- func (m *Member) Pub(rpcname string, args interface{}, reply interface{}) error
- func (m *Member) SetActive()
- func (m *Member) SetInActive()
- func (m *Member) UpdateTermId(termId int64)
- type MemberManager
- func (mm *MemberManager) BroadCast(rpcname string, args interface{}, reply interface{}) error
- func (mm *MemberManager) BroadCastDelRoute(routerKey string) error
- func (mm *MemberManager) BroadCastDelUpdateRoute(routerKey string, member proto.IMember) error
- func (mm *MemberManager) BroadCastRoute(routerKey string, member proto.IMember)
- func (mm *MemberManager) CallAll(rpcname string, args interface{}, reply interface{}) (callReplys []interface{}, err error)
- func (mm *MemberManager) CallWithDelSync(routerKey, rpcName string, req, resp interface{}, ...) error
- func (mm *MemberManager) CallWithOnceSync(routerKey, rpcName string, req, resp interface{}, ...) error
- func (mm *MemberManager) CallWithSync(routerKey, rpcName string, req, resp interface{}, ...) error
- func (mm *MemberManager) CallWithUpdateSync(routerKey, rpcName string, req, resp interface{}, ...) error
- func (mm *MemberManager) GetLocal() proto.IMember
- func (mm *MemberManager) GetLocalCopy() proto.IMember
- func (mm *MemberManager) GetMember(routerKey string) proto.IMember
- func (mm *MemberManager) GetMemberWithRemote(routerKey string) proto.IMember
- func (mm *MemberManager) GetMemberWithTry(routerKey string, retryCount int) (wantMember proto.IMember)
- func (mm *MemberManager) GetMembers() []proto.IMember
- func (mm *MemberManager) GetRemoteMember(args interface{}, reply interface{}) <-chan proto.IMember
- func (mm *MemberManager) GetRemovedKeysChan(routerKey string) chan string
- func (mm *MemberManager) GetRouter() *buntdb.DB
- func (mm *MemberManager) GetServiceXX(blocking bool)
- func (mm *MemberManager) OwnMember(routerKey string) proto.IMember
- func (mm *MemberManager) RegisteRpc(m ...interface{}) error
- func (mm *MemberManager) RemoveLocalRoute(routerKey string) error
- func (mm *MemberManager) RemoveUpdateLocalRoute(routerKey string, member proto.IMember) error
- func (mm *MemberManager) Set(key string, val interface{})
- func (mm *MemberManager) StartService() error
- func (mm *MemberManager) SyncRoute(member proto.IMember)
- func (mm *MemberManager) UpateLocalRoute(routerKey string, member proto.IMember)
- type MemberSub
- type MemberSync
- type SyncRequest
- type SyncResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type IMemberSync ¶
type IMemberSync interface { //ProxyCall(IProxyRequest, IProxyResponse) SyncKey(ISyncRequest, ISyncResponse) }
type IProxyRequest ¶
type IProxyRequest interface { }
type IProxyResponse ¶
type IProxyResponse interface { }
type ISyncRequest ¶
type ISyncRequest interface { }
type ISyncResponse ¶
type ISyncResponse interface { }
type Member ¶
type Member struct { rpc_proto.ISimpleRpc `json:"-"` MemberSub }
func (*Member) SetInActive ¶
func (m *Member) SetInActive()
func (*Member) UpdateTermId ¶ added in v1.1.0
type MemberManager ¶
type MemberManager struct { ServiceName string LocalIp string Port int dc_proto.IDiscovery // contains filtered or unexported fields }
func (*MemberManager) BroadCast ¶
func (mm *MemberManager) BroadCast(rpcname string, args interface{}, reply interface{}) error
广播
func (*MemberManager) BroadCastDelRoute ¶ added in v1.0.4
func (mm *MemberManager) BroadCastDelRoute(routerKey string) error
func (*MemberManager) BroadCastDelUpdateRoute ¶ added in v1.1.0
func (mm *MemberManager) BroadCastDelUpdateRoute(routerKey string, member proto.IMember) error
func (*MemberManager) BroadCastRoute ¶ added in v0.1.3
func (mm *MemberManager) BroadCastRoute(routerKey string, member proto.IMember)
func (*MemberManager) CallAll ¶
func (mm *MemberManager) CallAll(rpcname string, args interface{}, reply interface{}) (callReplys []interface{}, err error)
广播 只要有一个正常响应就行 这个逻辑是不是放到业务层去做更合适 可充当协调员的角色
func (*MemberManager) CallWithDelSync ¶ added in v1.0.5
func (mm *MemberManager) CallWithDelSync(routerKey, rpcName string, req, resp interface{}, localHandle func(req, resp interface{}) error) error
func (*MemberManager) CallWithOnceSync ¶ added in v1.1.0
func (mm *MemberManager) CallWithOnceSync(routerKey, rpcName string, req, resp interface{}, localHandle func(found bool, req, resp interface{}) error) error
func (*MemberManager) CallWithSync ¶ added in v1.0.2
func (mm *MemberManager) CallWithSync(routerKey, rpcName string, req, resp interface{}, localHandle func(found bool, req, resp interface{}) error) error
func (*MemberManager) CallWithUpdateSync ¶ added in v1.1.0
func (mm *MemberManager) CallWithUpdateSync(routerKey, rpcName string, req, resp interface{}, localHandle func(found bool, req, resp interface{}) error) error
func (*MemberManager) GetLocal ¶
func (mm *MemberManager) GetLocal() proto.IMember
func (*MemberManager) GetLocalCopy ¶ added in v1.1.0
func (mm *MemberManager) GetLocalCopy() proto.IMember
func (*MemberManager) GetMember ¶
func (mm *MemberManager) GetMember(routerKey string) proto.IMember
查找local路由信息 room_id -> {} key -> {Member的字段}
func (*MemberManager) GetMemberWithRemote ¶ added in v0.1.3
func (mm *MemberManager) GetMemberWithRemote(routerKey string) proto.IMember
本地没有则探测
func (*MemberManager) GetMemberWithTry ¶ added in v1.1.3
func (mm *MemberManager) GetMemberWithTry(routerKey string, retryCount int) (wantMember proto.IMember)
func (*MemberManager) GetMembers ¶
func (mm *MemberManager) GetMembers() []proto.IMember
使用discovery获取
func (*MemberManager) GetRemoteMember ¶ added in v0.1.3
func (mm *MemberManager) GetRemoteMember(args interface{}, reply interface{}) <-chan proto.IMember
探测其它节点,同时同步其它没有的节点 todo 作为 协调员的角色, 比较各节点返回的node/termid 是否一致?
func (*MemberManager) GetRemovedKeysChan ¶ added in v1.2.1
func (mm *MemberManager) GetRemovedKeysChan(routerKey string) chan string
func (*MemberManager) GetRouter ¶ added in v1.0.2
func (mm *MemberManager) GetRouter() *buntdb.DB
func (*MemberManager) GetServiceXX ¶ added in v1.0.9
func (mm *MemberManager) GetServiceXX(blocking bool)
func (*MemberManager) OwnMember ¶ added in v1.0.2
func (mm *MemberManager) OwnMember(routerKey string) proto.IMember
本地有就处理, 否则直接返回
func (*MemberManager) RegisteRpc ¶ added in v0.1.5
func (mm *MemberManager) RegisteRpc(m ...interface{}) error
func (*MemberManager) RemoveLocalRoute ¶ added in v1.0.2
func (mm *MemberManager) RemoveLocalRoute(routerKey string) error
func (*MemberManager) RemoveUpdateLocalRoute ¶ added in v1.1.0
func (mm *MemberManager) RemoveUpdateLocalRoute(routerKey string, member proto.IMember) error
func (*MemberManager) Set ¶
func (mm *MemberManager) Set(key string, val interface{})
func (*MemberManager) StartService ¶
func (mm *MemberManager) StartService() error
func (*MemberManager) SyncRoute ¶
func (mm *MemberManager) SyncRoute(member proto.IMember)
和另一个结点交互路由信息
func (*MemberManager) UpateLocalRoute ¶
func (mm *MemberManager) UpateLocalRoute(routerKey string, member proto.IMember)
根据termid更新
type MemberSync ¶
type MemberSync struct {
// contains filtered or unexported fields
}
func (*MemberSync) DelKey ¶ added in v1.0.2
func (ms *MemberSync) DelKey(req SyncRequest, resp *SyncResponse) error
func (*MemberSync) DelKeyV2 ¶ added in v1.1.0
func (ms *MemberSync) DelKeyV2(req SyncRequest, resp *SyncResponse) error
func (*MemberSync) Probe ¶
func (ms *MemberSync) Probe(req SyncRequest, resp *SyncResponse) error
同步或确认key的最新“分布”
func (*MemberSync) SyncKey ¶
func (ms *MemberSync) SyncKey(req SyncRequest, resp *SyncResponse) error
同步或确认key的最新“分布”
type SyncRequest ¶
func (SyncRequest) GetKey ¶ added in v0.1.3
func (req SyncRequest) GetKey() string
func (SyncRequest) GetKeyNode ¶ added in v0.1.3
func (req SyncRequest) GetKeyNode() proto.IMember
func (SyncRequest) GetSourceNode ¶ added in v0.1.3
func (req SyncRequest) GetSourceNode() proto.IMember
type SyncResponse ¶
func (*SyncResponse) GetKey ¶ added in v0.1.3
func (resp *SyncResponse) GetKey() string
func (*SyncResponse) GetKeyNode ¶ added in v0.1.3
func (resp *SyncResponse) GetKeyNode() proto.IMember
func (*SyncResponse) GetSourceNode ¶ added in v0.1.3
func (resp *SyncResponse) GetSourceNode() proto.IMember
Click to show internal directories.
Click to hide internal directories.