server

package
v2.5.0 Latest Latest
Warning

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

Go to latest
Published: Jan 6, 2022 License: GPL-3.0 Imports: 15 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

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

func NewClient

func NewClient(c config.Config) Client

func (*Client) Clone

func (c *Client) Clone() *Client

func (*Client) GetResult

func (c *Client) GetResult(taskId string, timeout time.Duration, sleepTime time.Duration) (message.Result, error)

taskId: timeout: sleepDuration:

func (*Client) GetStatus added in v2.2.0

func (c *Client) GetStatus(taskId string, timeout time.Duration, sleepTime time.Duration) (int, error)

taskId: timeout: sleepDuration:

func (*Client) Send

func (c *Client) Send(groupName string, workerName string, args ...interface{}) (string, error)

return: taskId, err

func (*Client) SetTaskCtl

func (c *Client) SetTaskCtl(name int, value interface{}) *Client

type DelayServer added in v2.2.0

type DelayServer struct {
	sync.Map
	// contains filtered or unexported fields
}

func NewDelayServer added in v2.2.0

func NewDelayServer(groupName string, c config.Config, msgChan chan message.Message) DelayServer

func (*DelayServer) BackendActivate added in v2.2.0

func (b *DelayServer) BackendActivate()

func (*DelayServer) BrokerActivate added in v2.2.0

func (b *DelayServer) BrokerActivate()

func (*DelayServer) GetBackendPoolSize added in v2.2.0

func (b *DelayServer) GetBackendPoolSize() int

func (*DelayServer) GetBrokerPoolSize added in v2.2.0

func (b *DelayServer) GetBrokerPoolSize() int

func (DelayServer) GetDelayGroupName added in v2.2.0

func (b DelayServer) GetDelayGroupName(groupName string) string

func (*DelayServer) GetDelayMsgGoroutine added in v2.2.0

func (s *DelayServer) GetDelayMsgGoroutine()

获取延时任务到本地队列

func (*DelayServer) GetDelayMsgGoroutine_UpdateQueue added in v2.2.0

func (s *DelayServer) GetDelayMsgGoroutine_UpdateQueue(msg message.Message)

func (DelayServer) GetQueueName added in v2.2.0

func (b DelayServer) GetQueueName(groupName string) string

func (*DelayServer) GetReadyMsgGoroutine added in v2.2.0

func (s *DelayServer) GetReadyMsgGoroutine()

从本地队列中获取到处理时间的任务,发送到readyMsgChan

func (*DelayServer) GetReadyMsgGoroutine_Send added in v2.2.0

func (s *DelayServer) GetReadyMsgGoroutine_Send(msg message.Message) (err error)

func (*DelayServer) GetResult added in v2.2.0

func (b *DelayServer) GetResult(id string) (message.Result, error)

func (*DelayServer) IsRunning added in v2.2.0

func (s *DelayServer) IsRunning() bool

func (*DelayServer) IsStop added in v2.2.0

func (s *DelayServer) IsStop() bool

func (*DelayServer) LSendMsg added in v2.2.0

func (b *DelayServer) LSendMsg(groupName string, msg message.Message) error

func (*DelayServer) LSendQueue added in v2.2.0

func (s *DelayServer) LSendQueue()

func (*DelayServer) Next added in v2.2.0

func (b *DelayServer) Next(groupName string) (message.Message, error)

func (*DelayServer) Run added in v2.2.0

func (s *DelayServer) Run()

func (*DelayServer) Send added in v2.2.0

func (b *DelayServer) Send(groupName string, workerName string, ctl controller.TaskCtl, args ...interface{}) (string, error)

send msg to Queue t.Send("groupName", "workerName" , 1,"hi",1.2)

func (*DelayServer) SendMsg added in v2.2.0

func (b *DelayServer) SendMsg(groupName string, msg message.Message) error

func (*DelayServer) SendReadyMsgGoroutine added in v2.2.0

func (s *DelayServer) SendReadyMsgGoroutine()

从readyMsgChan中读取任务,传给inlineServer的Chan处理

func (*DelayServer) SendReadyMsgGoroutine_Send added in v2.2.0

func (s *DelayServer) SendReadyMsgGoroutine_Send(msg message.Message) (err error)

func (*DelayServer) SetBackendPoolSize added in v2.2.0

func (b *DelayServer) SetBackendPoolSize(num int)

func (*DelayServer) SetBrokerPoolSize added in v2.2.0

func (b *DelayServer) SetBrokerPoolSize(num int)

func (*DelayServer) SetResult added in v2.2.0

func (b *DelayServer) SetResult(result message.Result) error

func (*DelayServer) SetRunning added in v2.2.0

func (s *DelayServer) SetRunning()

func (*DelayServer) SetStop added in v2.2.0

func (s *DelayServer) SetStop()

func (*DelayServer) Shutdown added in v2.2.0

func (s *DelayServer) Shutdown(ctx context.Context) error

type InlineServer added in v2.2.0

type InlineServer struct {
	sync.Map
	// contains filtered or unexported fields
}

func NewInlineServer added in v2.2.0

func NewInlineServer(groupName string, c config.Config) InlineServer

func (*InlineServer) Add added in v2.2.0

func (t *InlineServer) Add(workerName string, w interface{}, callbackFunc ...interface{})

Add worker to group w : worker func callbackFunc : callbackFunc func

func (*InlineServer) BackendActivate added in v2.2.0

func (b *InlineServer) BackendActivate()

func (*InlineServer) BrokerActivate added in v2.2.0

func (b *InlineServer) BrokerActivate()

func (*InlineServer) GetBackendPoolSize added in v2.2.0

func (b *InlineServer) GetBackendPoolSize() int

func (*InlineServer) GetBrokerPoolSize added in v2.2.0

func (b *InlineServer) GetBrokerPoolSize() int

func (InlineServer) GetDelayGroupName added in v2.2.0

func (b InlineServer) GetDelayGroupName(groupName string) string

func (*InlineServer) GetNextMessageGoroutine added in v2.2.0

func (t *InlineServer) GetNextMessageGoroutine()

get next message if worker is ready

func (InlineServer) GetQueueName added in v2.2.0

func (b InlineServer) GetQueueName(groupName string) string

func (*InlineServer) GetResult added in v2.2.0

func (b *InlineServer) GetResult(id string) (message.Result, error)

func (*InlineServer) IsRunning added in v2.2.0

func (t *InlineServer) IsRunning() bool

func (*InlineServer) IsStop added in v2.2.0

func (t *InlineServer) IsStop() bool

func (*InlineServer) LSendMsg added in v2.2.0

func (b *InlineServer) LSendMsg(groupName string, msg message.Message) error

func (*InlineServer) MakeWorkerReady added in v2.2.0

func (t *InlineServer) MakeWorkerReady()

func (*InlineServer) Next added in v2.2.0

func (b *InlineServer) Next(groupName string) (message.Message, error)

func (*InlineServer) Run added in v2.2.0

func (t *InlineServer) Run(numWorkers int)

func (*InlineServer) Send added in v2.2.0

func (b *InlineServer) Send(groupName string, workerName string, ctl controller.TaskCtl, args ...interface{}) (string, error)

send msg to Queue t.Send("groupName", "workerName" , 1,"hi",1.2)

func (*InlineServer) SendMsg added in v2.2.0

func (b *InlineServer) SendMsg(groupName string, msg message.Message) error

func (*InlineServer) SetBackendPoolSize added in v2.2.0

func (b *InlineServer) SetBackendPoolSize(num int)

func (*InlineServer) SetBrokerPoolSize added in v2.2.0

func (b *InlineServer) SetBrokerPoolSize(num int)

func (*InlineServer) SetResult added in v2.2.0

func (b *InlineServer) SetResult(result message.Result) error

func (*InlineServer) SetRunning added in v2.2.0

func (t *InlineServer) SetRunning()

func (*InlineServer) SetStop added in v2.2.0

func (t *InlineServer) SetStop()

func (*InlineServer) Shutdown added in v2.2.0

func (t *InlineServer) Shutdown(ctx context.Context) error

func (*InlineServer) WorkerGoroutine added in v2.2.0

func (t *InlineServer) WorkerGoroutine()

start worker to run

type Server

type Server struct {
	ServerMap      map[string]*InlineServer // groupName:server
	DelayServerMap map[string]*DelayServer  // groupName:server
	// contains filtered or unexported fields
}

func NewServer

func NewServer(c config.Config) Server

func (*Server) Add

func (t *Server) Add(groupName string, workerName string, w interface{}, callbackFunc ...interface{})

Add worker to group w : worker func callbackFunc:callbackFunc

func (*Server) GetClient

func (t *Server) GetClient() Client

func (*Server) Run

func (t *Server) Run(groupName string, numWorkers int, enableDelayServer ...bool)

func (*Server) Shutdown

func (t *Server) Shutdown(ctx context.Context) error

type SortQueue added in v2.2.0

type SortQueue struct {
	sync.Mutex

	Queue []message.Message

	MaxLen int
	// contains filtered or unexported fields
}

func NewSortQueue added in v2.4.0

func NewSortQueue(maxLen int) SortQueue

func (*SortQueue) Get added in v2.2.0

func (s *SortQueue) Get(i int) message.Message

func (*SortQueue) Insert added in v2.2.0

func (s *SortQueue) Insert(msg message.Message) *message.Message

func (*SortQueue) IsFull added in v2.2.0

func (s *SortQueue) IsFull() bool

func (*SortQueue) Pop added in v2.2.0

func (s *SortQueue) Pop() *message.Message

Jump to

Keyboard shortcuts

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