discover

package
v0.0.0-...-a3a5c94 Latest Latest
Warning

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

Go to latest
Published: Aug 21, 2021 License: MIT Imports: 22 Imported by: 0

README

Data center internal service discovery package

Based on ETCD

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Callback

type Callback interface {
	UpdateEndpoints(endpoints ...*config.Endpoint)
	//when watch occurred error,will exec this method
	Error(error)
}

Callback

type CallbackUpdate

type CallbackUpdate interface {
	//TODO:
	//weight automatic discovery change implementation temporarily not ready
	UpdateEndpoints(operation config.Operation, endpoints ...*config.Endpoint)
	//when watch occurred error,will exec this method
	Error(error)
}

CallbackUpdate

type Discover

type Discover interface {
	// Add project to cache if not exists, then watch the endpoints.
	AddProject(name string, callback Callback)
	// Update a project.
	AddUpdateProject(name string, callback CallbackUpdate)
	Stop()
}

Discover

func GetDiscover

func GetDiscover(opt config.DiscoverConfig) (Discover, error)

GetDiscover

func NewK8sDiscover

func NewK8sDiscover(ctx context.Context, clientset kubernetes.Interface, cfg *option.Conf) Discover

NewK8sDiscover creates a new Discover

type KeepAlive

type KeepAlive struct {
	EtcdClientArgs *etcdutil.ClientArgs
	ServerName     string
	HostName       string
	Endpoint       string
	TTL            int64
	LID            clientv3.LeaseID
	Done           chan struct{}
	// contains filtered or unexported fields
}

KeepAlive

func CreateKeepAlive

func CreateKeepAlive(etcdClientArgs *etcdutil.ClientArgs, ServerName string, Protocol string, HostIP string, Port int) (*KeepAlive, error)

CreateKeepAlive create keepalive for server

func (*KeepAlive) Start

func (k *KeepAlive) Start() error

Start

func (*KeepAlive) Stop

func (k *KeepAlive) Stop()

Stop

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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