master

package
v0.0.0-...-bc5e729 Latest Latest
Warning

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

Go to latest
Published: Dec 9, 2017 License: MPL-2.0 Imports: 15 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrServiceUnavailable ShardMaster is broken
	ErrServiceUnavailable = errors.New("service is unavailable")
)

Functions

This section is empty.

Types

type Master

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

Master is the master of a raft group

var Default *Master

Default for the default master

func (*Master) PeerHTTPAddr

func (m *Master) PeerHTTPAddr(raftAddr string) (string, error)

PeerHTTPAddr get the httpAddr for the raft

func (*Master) Peers

func (m *Master) Peers() ([]string, error)

Peers returns the peers

func (*Master) RegisterPeer

func (m *Master) RegisterPeer(raftAddr, httpAddr string) error

RegisterPeer register peer

func (*Master) Start

func (m *Master) Start()

Start starts manage peers

func (*Master) UpdatePeers

func (m *Master) UpdatePeers(peers []string) error

UpdatePeers updatePeers into store

type Member

type Member struct {
	Addr   string
	GID    int
	Extras map[string]string
}

Member for one server

type ShardMaster

type ShardMaster interface {
	Join(member Member) error
	Leave(member Member) error
	Move(shardIndex int, member Member) error
	Query(key string) (members [][]string, err error)
}

ShardMaster as shard master

func NewShardMasterServer

func NewShardMasterServer() (ShardMaster, error)

NewShardMasterServer allocates and returns a new shardMasterServer

Jump to

Keyboard shortcuts

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