cluster

package
v1.8.4 Latest Latest
Warning

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

Go to latest
Published: Mar 17, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Nodes  []Node `json:"nodes"`
	Leader Node   `json:"leader"`
}

func ConvertJSONToConfig

func ConvertJSONToConfig(jsonString string) (*Config, error)

func (*Config) AddNode

func (config *Config) AddNode(node Node)

func (*Config) Equals

func (config *Config) Equals(config2 *Config) bool

func (*Config) ToJSON

func (config *Config) ToJSON() (string, error)

type EtcdServer

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

func CreateEtcdServer

func CreateEtcdServer(thisNode Node, config Config, dataPath string) *EtcdServer

func (*EtcdServer) CurrentCluster

func (server *EtcdServer) CurrentCluster() Config

func (*EtcdServer) Leader

func (server *EtcdServer) Leader() string

func (*EtcdServer) Members

func (server *EtcdServer) Members() []Node

func (*EtcdServer) Start

func (server *EtcdServer) Start()

func (*EtcdServer) Stop

func (server *EtcdServer) Stop()

func (*EtcdServer) StorageDir

func (server *EtcdServer) StorageDir() string

func (*EtcdServer) WaitToStart

func (server *EtcdServer) WaitToStart()

func (*EtcdServer) WaitToStop

func (server *EtcdServer) WaitToStop()

type Node

type Node struct {
	Name           string `json:"name"`
	Host           string `json:"host"`
	EtcdClientPort int    `json:"port"`     // Etcd default 2379
	EtcdPeerPort   int    `json:"peerport"` // Etcd default 2380
	RelayPort      int    `json:"relayport"`
	APIPort        int    `json:"apiport"`
}

func (*Node) Equals

func (node *Node) Equals(node2 *Node) bool

type RelayServer

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

func CreateRelayServer

func CreateRelayServer(thisNode Node, clusterConfig Config) *RelayServer

func (*RelayServer) Broadcast

func (server *RelayServer) Broadcast(msg []byte) error

Send a message to all ReplayServers in the Cluster

func (*RelayServer) Receive

func (server *RelayServer) Receive() chan []byte

func (*RelayServer) Shutdown

func (server *RelayServer) Shutdown()

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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