registry

package
v0.9.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 8, 2022 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Functions

func AllNodes added in v0.8.0

func AllNodes() ([]*memberlist.Node, error)

AllNodes return all memberlist nodes except dead and left nodes

func BaseUrl added in v0.8.0

func BaseUrl(node *memberlist.Node) (string, error)

func Leave added in v0.9.6

func Leave(timeout time.Duration)

Leave leaves the cluster on purpose

func LocalNode added in v0.5.8

func LocalNode() *memberlist.Node

func MetaWeight added in v0.8.0

func MetaWeight(node *memberlist.Node) (int, error)

func NewNode

func NewNode(data ...map[string]interface{}) error

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 added in v0.8.0

func RegisterServiceProvider(sp IServiceProvider)

func Shutdown

func Shutdown()

Shutdown stops all connections and communications with other nodes in the cluster

func SvcName added in v0.8.0

func SvcName(node *memberlist.Node) string

Types

type IServiceProvider added in v0.8.0

type IServiceProvider interface {
	SelectServer() string
	AddNode(node *memberlist.Node)
	UpdateWeight(node *memberlist.Node)
	RemoveNode(node *memberlist.Node)
}

IServiceProvider defines service provider interface for server discovery

type NodeInfo added in v0.5.8

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

func Info added in v0.8.0

func Info(node *memberlist.Node) NodeInfo

Info return node info

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL