cluster

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Jan 1, 2021 License: BSD-3-Clause Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Cluster

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

Cluster

func New

func New(serverID []byte, replicaHandler ReplicaMessageHandler, clusterHandler MessageHandler) *Cluster

func (*Cluster) AddMember

func (c *Cluster) AddMember(m *Member)

func (*Cluster) Addr

func (c *Cluster) Addr() string

func (*Cluster) GetByID

func (c *Cluster) GetByID(id string) *Member

func (*Cluster) GossipPort

func (c *Cluster) GossipPort() int

func (*Cluster) Join

func (c *Cluster) Join(addr ...string) (int, error)

func (*Cluster) LeaderID

func (c *Cluster) LeaderID() string

func (*Cluster) Members

func (c *Cluster) Members() []*Member

func (*Cluster) RaftApply

func (c *Cluster) RaftApply(cmd []byte) raft.ApplyFuture

func (*Cluster) RaftConfigs

func (c *Cluster) RaftConfigs() raft.ConfigurationFuture

func (*Cluster) RaftEnabled

func (c *Cluster) RaftEnabled() bool

func (*Cluster) RaftState

func (c *Cluster) RaftState() raft.RaftState

func (*Cluster) RemoveMember

func (c *Cluster) RemoveMember(m *Member)

func (*Cluster) ReplicaSet

func (c *Cluster) ReplicaSet() uint64

func (*Cluster) Send

func (c *Cluster) Send(serverID string, envelope *rony.MessageEnvelope, kvs ...*rony.KeyValue) (err error)

func (*Cluster) SetDataPath

func (c *Cluster) SetDataPath(path string)

func (*Cluster) SetGatewayAddrs

func (c *Cluster) SetGatewayAddrs(addrs []string) error

func (*Cluster) SetGossipPort

func (c *Cluster) SetGossipPort(port int)

func (*Cluster) SetRaft

func (c *Cluster) SetRaft(replicaSet uint64, bindPort int, bootstrap bool)

func (*Cluster) Shutdown

func (c *Cluster) Shutdown()

func (*Cluster) Start

func (c *Cluster) Start()

type Member

type Member struct {
	ServerID    string
	ReplicaSet  uint64
	ShardRange  [2]uint32
	GatewayAddr []string
	ClusterAddr net.IP
	ClusterPort uint16
	RaftPort    int
	RaftState   rony.RaftState
	// contains filtered or unexported fields
}

Member

type MessageHandler

type MessageHandler func(cm *rony.ClusterMessage)

type ReplicaMessageHandler

type ReplicaMessageHandler func(raftCmd *rony.RaftCommand) error

Jump to

Keyboard shortcuts

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