dispatcher

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Feb 1, 2023 License: GPL-3.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Dispatcher

type Dispatcher struct {
	Channel         chan model2.QueueMessage
	CallbackChannel chan model2.StatusChangeMessage
	// contains filtered or unexported fields
}

func NewDispatcher

func NewDispatcher(channel chan model2.QueueMessage, callbackChannel chan model2.StatusChangeMessage) *Dispatcher

func (*Dispatcher) CancelJob

func (d *Dispatcher) CancelJob(job *model2.JobDetail, node *model2.Node)

CancelJob 取消任务

func (*Dispatcher) DispatchNode

func (d *Dispatcher) DispatchNode(job *model2.Job) *model2.Node

DispatchNode 选择节点

func (*Dispatcher) GetExecutor

func (d *Dispatcher) GetExecutor(node *model2.Node) executor.IExecutor

GetExecutor 根据节点获取执行器 TODO ... 这个方法设计的不好,分布式机构后应当用api代替

func (*Dispatcher) HealthcheckNode

func (d *Dispatcher) HealthcheckNode(*model2.Node)

HealthcheckNode 节点心跳

func (*Dispatcher) Register

func (d *Dispatcher) Register(node *model2.Node)

Register 节点注册

func (*Dispatcher) SendJob

func (d *Dispatcher) SendJob(job *model2.JobDetail, node *model2.Node)

SendJob 发送任务

func (*Dispatcher) UnRegister

func (d *Dispatcher) UnRegister(node *model2.Node)

UnRegister 节点注销

type HttpDispatcher

type HttpDispatcher struct {
	Channel chan model2.QueueMessage
	// contains filtered or unexported fields
}

func (*HttpDispatcher) CancelJob

func (d *HttpDispatcher) CancelJob(job *model2.JobDetail, node *model2.Node)

CancelJob 取消任务

func (*HttpDispatcher) DispatchNode

func (d *HttpDispatcher) DispatchNode(job *model2.Job) *model2.Node

DispatchNode 选择节点

func (*HttpDispatcher) GetExecutor

func (d *HttpDispatcher) GetExecutor(node *model2.Node) executor.IExecutor

GetExecutor 根据节点获取执行器 TODO ... 这个方法设计的不好,分布式机构后应当用api代替

func (*HttpDispatcher) HealthcheckNode

func (d *HttpDispatcher) HealthcheckNode(node *model2.Node)

HealthcheckNode 节点心跳

func (*HttpDispatcher) Register

func (d *HttpDispatcher) Register(node *model2.Node)

Register 节点注册

func (*HttpDispatcher) SendJob

func (d *HttpDispatcher) SendJob(job *model2.JobDetail, node *model2.Node)

SendJob 发送任务

func (*HttpDispatcher) UnRegister

func (d *HttpDispatcher) UnRegister(node *model2.Node)

UnRegister 节点注销

type IDispatcher

type IDispatcher interface {
	// DispatchNode 选择节点
	DispatchNode(job *model2.Job) *model2.Node
	// Register 节点注册
	Register(node *model2.Node)
	// UnRegister 节点注销
	UnRegister(node *model2.Node)

	// HealthcheckNode 节点心跳
	HealthcheckNode(node *model2.Node)

	// SendJob 发送任务
	SendJob(job *model2.JobDetail, node *model2.Node)

	// CancelJob 取消任务
	CancelJob(job *model2.JobDetail, node *model2.Node)

	// GetExecutor 根据节点获取执行器
	// TODO ... 这个方法设计的不好,分布式机构后应当用api代替
	GetExecutor(node *model2.Node) executor.IExecutor
}

Jump to

Keyboard shortcuts

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