README

Gossip Registry

Gossip is a zero dependency registry which uses hashicorp/memberlist to broadcast registry information via the SWIM protocol.

Usage

Start with the registry flag or env var

MICRO_REGISTRY=gossip go run service.go

On startup you'll see something like

2018/12/06 18:17:48 Registry Listening on 192.168.1.65:56390

To join this gossip ring set the registry address using flag or env var

MICRO_REGISTRY_ADDRESS= 192.168.1.65:56390 
Expand ▾ Collapse ▴

Documentation

Overview

    Package Gossip provides a gossip registry based on hashicorp/memberlist

    Index

    Constants

    This section is empty.

    Variables

    View Source
    var (
    	// You should change this if using secure
    	DefaultSecret = []byte("micro-gossip-key") // exactly 16 bytes
    	ExpiryTick    = time.Second * 5
    )

    Functions

    func Address

    func Address(a string) registry.Option

      Address to bind to - host:port

      func Advertise(a string) registry.Option

        The address to advertise for other gossip members - host:port

        func Config

        func Config(c *memberlist.Config) registry.Option

          Config allow to inject a *memberlist.Config struct for configuring gossip

          func NewRegistry

          func NewRegistry(opts ...registry.Option) registry.Registry

          func Secret

          func Secret(k []byte) registry.Option

            Secret specifies an encryption key. The value should be either 16, 24, or 32 bytes to select AES-128, AES-192, or AES-256.

            Types

            This section is empty.

            Directories

            Path Synopsis
            Package gossip is a generated protocol buffer package.
            Package gossip is a generated protocol buffer package.