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
Source Files ¶
Click to show internal directories.
Click to hide internal directories.