Documentation ¶
Overview ¶
raftx is a utility package for easy to use raft library.
Index ¶
- Constants
- type Node
- type RaftX
- func (r *RaftX) AddPeer(node *Node) error
- func (r *RaftX) AddPeers(nodes ...*Node) error
- func (r *RaftX) EnableRaftAdmin()
- func (r *RaftX) EnableRefelctionService()
- func (r *RaftX) GetAddress() string
- func (r *RaftX) SetDataDir(dir string) error
- func (r *RaftX) SetHealthService(name string) error
- func (r *RaftX) Start(s *grpc.Server, fn func(*raft.Raft)) error
Constants ¶
View Source
const ( RAFT_DATA_DIR = "data" Logs_File = "logs.dat" Stable_File = "stable.dat" LOCAL_HOST = "localhost" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RaftX ¶
type RaftX struct {
// contains filtered or unexported fields
}
RaftX 实例
func NewRaftX ¶
NewRaftX 函数用于创建一个新的RaftX实例。
参数: node: 指向Node类型的指针,表示节点对象。 raftBootstrap: bool类型,表示是否开启Raft的引导模式。 fsm: raft.FSM类型,表示状态机对象。
返回值: *RaftX: 指向RaftX类型的指针,表示创建的RaftX实例。 error: 表示在创建RaftX实例时可能出现的错误。
func NewRaftXWithConfig ¶
func NewRaftXWithConfig(c *raft.Config, node *Node, raftBootstrap bool, fsm raft.FSM) (*RaftX, error)
NewRaftXWithConfig 根据提供的 Raft 配置、节点信息、是否引导 Raft 集群和有限状态机(FSM)创建一个新的 RaftX 实例
参数: c *raft.Config - Raft 配置信息 node *Node - 节点信息 raftBootstrap bool - 是否引导 Raft 集群. 如果已存在 Raft 集群配置目录,则不会生效该设置,使用配置目录中的设置 fsm raft.FSM - raft.FSM 接口实现,支持BatchFSM接口
返回值: *RaftX - 创建的 RaftX 实例 error - 如果创建过程中出现错误,则返回错误信息
func (*RaftX) EnableRaftAdmin ¶
func (r *RaftX) EnableRaftAdmin()
func (*RaftX) EnableRefelctionService ¶
func (r *RaftX) EnableRefelctionService()
func (*RaftX) GetAddress ¶
getAddress 返回 RaftX 实例绑定的地址信息 返回一个格式为 "host:port" 的字符串
func (*RaftX) SetDataDir ¶
func (*RaftX) SetHealthService ¶
Click to show internal directories.
Click to hide internal directories.