etcd3

package
v0.4.3 Latest Latest
Warning

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

Go to latest
Published: Nov 15, 2023 License: MIT Imports: 16 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterResolver

func RegisterResolver(etcdConfig clientv3.Config)

RegisterResolver register etcdBuilder as the global grpc resolver

Types

type Driver added in v0.0.3

type Driver struct {
	// contains filtered or unexported fields
}

Driver is an etcd3 registry driver. Support reference config.

func (*Driver) CreateRegistry added in v0.0.3

func (drv *Driver) CreateRegistry(cnf *conf.Configuration) (registry.Registry, error)

CreateRegistry creates a new registry.

func (*Driver) GetRegistry added in v0.4.0

func (drv *Driver) GetRegistry(name string) (registry.Registry, error)

GetRegistry gets a registry by name.

only a reference registry can be got.see the config example

func (*Driver) ResolverBuilder added in v0.0.3

func (drv *Driver) ResolverBuilder(cnf *conf.Configuration) (resolver.Builder, error)

ResolverBuilder creates a new resolver builder.

func (*Driver) WithDialOptions added in v0.3.0

func (drv *Driver) WithDialOptions(registry.DialOptions) ([]grpc.DialOption, error)

WithDialOptions no need to implement

type Options added in v0.0.2

type Options struct {
	EtcdConfig clientv3.Config `json:"etcd" yaml:"etcd"`
	TTL        time.Duration   `json:"ttl" yaml:"ttl"`
}

type Registry

type Registry struct {
	sync.RWMutex
	// contains filtered or unexported fields
}

Registry is an etcd3 registry for service discovery.

func BuildFromConfig

func BuildFromConfig(config *Options) (*Registry, error)

func New

func New() *Registry

func (*Registry) Apply

func (r *Registry) Apply(cfg *conf.Configuration)

func (*Registry) Close

func (r *Registry) Close()

func (*Registry) GetServiceInfos added in v0.4.0

func (r *Registry) GetServiceInfos(service string) ([]*registry.ServiceInfo, error)

GetServiceInfos implements registry interface

func (*Registry) Register

func (r *Registry) Register(node *registry.ServiceInfo) error

func (*Registry) TTL

func (r *Registry) TTL() time.Duration

func (*Registry) Unregister

func (r *Registry) Unregister(node *registry.ServiceInfo) error

Unregister remove service from etcd

Jump to

Keyboard shortcuts

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