package eureka

import "github.com/go-kit/kit/sd/eureka"

Package eureka provides Instancer and Registrar implementations for Netflix OSS's Eureka

Index

Types

type Instancer

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

Instancer yields instances stored in the Eureka registry for the given app. Changes in that app are watched and will update the subscribers.

func NewInstancer

func NewInstancer(conn fargoConnection, app string, logger log.Logger) *Instancer

NewInstancer returns a Eureka Instancer. It will start watching the given app string for changes, and update the subscribers accordingly.

func (*Instancer) Deregister

func (s *Instancer) Deregister(ch chan<- sd.Event)

Deregister implements Instancer.

func (*Instancer) Register

func (s *Instancer) Register(ch chan<- sd.Event)

Register implements Instancer.

func (*Instancer) Stop

func (s *Instancer) Stop()

Stop terminates the Instancer.

type Registrar

type Registrar struct {
	sync.Mutex
	// contains filtered or unexported fields
}

Registrar maintains service instance liveness information in Eureka.

func NewRegistrar

func NewRegistrar(conn fargoConnection, instance *fargo.Instance, logger log.Logger) *Registrar

NewRegistrar returns an Eureka Registrar acting on behalf of the provided Fargo connection and instance. See the integration test for usage examples.

func (*Registrar) Deregister

func (r *Registrar) Deregister()

Deregister implements sd.Registrar.

func (*Registrar) Register

func (r *Registrar) Register()

Register implements sd.Registrar.

Source Files

doc.go instancer.go registrar.go

Version
v0.13.0 (latest)
Published
May 29, 2023
Platform
linux/amd64
Imports
8 packages
Last checked
1 day ago

Tools for package owners.