Documentation
¶
Index ¶
- Variables
- func AllNodes() ([]*memberlist.Node, error)
- func BaseUrl(node *memberlist.Node) (string, error)
- func CallbackOnChange(listener *memConfigListener) func(event *configmgr.NacosChangeEvent)
- func Leave(timeout time.Duration)
- func LocalNode() *memberlist.Node
- func MetaWeight(node *memberlist.Node) (int, error)
- func NewNode(data ...map[string]interface{}) error
- func RegisterServiceProvider(sp IMemberlistServiceProvider)
- func Shutdown()
- func SvcName(node *memberlist.Node) string
- type IMemberlistServiceProvider
- type INacosServiceProvider
- type IServiceProvider
- type NodeInfo
Constants ¶
This section is empty.
Variables ¶
View Source
var BroadcastQueue *memberlist.TransmitLimitedQueue
Functions ¶
func AllNodes ¶
func AllNodes() ([]*memberlist.Node, error)
AllNodes return all memberlist nodes except dead and left nodes
func CallbackOnChange ¶ added in v1.0.6
func CallbackOnChange(listener *memConfigListener) func(event *configmgr.NacosChangeEvent)
func LocalNode ¶
func LocalNode() *memberlist.Node
func MetaWeight ¶
func MetaWeight(node *memberlist.Node) (int, error)
func NewNode ¶
NewNode creates a new go-doudou node. service related custom data (<= 512 bytes after being marshalled as json format) can be passed into it by data parameter. it is made as a variadic function only for backward compatibility purposes, only first parameter will be used.
func RegisterServiceProvider ¶
func RegisterServiceProvider(sp IMemberlistServiceProvider)
func Shutdown ¶
func Shutdown()
Shutdown stops all connections and communications with other nodes in the cluster
func SvcName ¶
func SvcName(node *memberlist.Node) string
Types ¶
type IMemberlistServiceProvider ¶ added in v1.1.1
type IMemberlistServiceProvider interface {
IServiceProvider
AddNode(node *memberlist.Node)
UpdateWeight(node *memberlist.Node)
RemoveNode(node *memberlist.Node)
}
IMemberlistServiceProvider defines service provider interface for server discovery
type INacosServiceProvider ¶ added in v1.1.1
type INacosServiceProvider interface {
SetClusters(clusters []string)
SetGroupName(groupName string)
SetNamingClient(namingClient naming_client.INamingClient)
}
type IServiceProvider ¶
type IServiceProvider interface {
SelectServer() string
}
type NodeInfo ¶
type NodeInfo struct {
SvcName string `json:"svcName"`
Hostname string `json:"hostname"`
BaseUrl string `json:"baseUrl"`
Status string `json:"status"`
Uptime string `json:"uptime"`
GoVer string `json:"goVer"`
GddVer string `json:"gddVer"`
BuildUser string `json:"buildUser"`
BuildTime string `json:"buildTime"`
Data map[string]interface{} `json:"data"`
Host string `json:"host"`
SvcPort int `json:"svcPort"`
MemPort int `json:"memPort"`
}
NodeInfo wraps node information
Click to show internal directories.
Click to hide internal directories.