sidejob

package module
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2022 License: MIT Imports: 10 Imported by: 1

README

sidejob

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Queue

type Queue struct {
	QName string
	// contains filtered or unexported fields
}

Queue ...

func NewQueue

func NewQueue(name string, mq *sidejob) *Queue

NewQueue ...

func (*Queue) GetDLQLength

func (q *Queue) GetDLQLength() (int64, error)

GetDLQLength ...

func (*Queue) GetQueueLength

func (q *Queue) GetQueueLength() (int64, error)

GetQueueLength ...

func (*Queue) GetWorker

func (q *Queue) GetWorker(id string) (*Worker, error)

GetWorker ...

func (*Queue) Publish

func (q *Queue) Publish(payload string) (int64, error)

Publish ...

func (*Queue) SetWorkerGroup

func (q *Queue) SetWorkerGroup(wg WorkerGroup)

SetWorkerGroup ...

func (*Queue) Start

func (q *Queue) Start(count int64) chan interface{}

Start ...

func (*Queue) Stop

func (q *Queue) Stop(ctx context.Context)

Stop ...

func (*Queue) Update

func (q *Queue) Update(count int64)

Update ...

type Sidejob

type Sidejob interface {
	GetPublisher(string) (*Queue, error)
	GetPublisherWithWorker(string, WorkerGroup) (*Queue, error)
	GetConsumer(string) (*Queue, error)
	GetConsumerWithWorker(string, WorkerGroup) (*Queue, error)
	GetCache() rediscache.Cache
}

Sidejob ...

func NewSidejob

func NewSidejob(log *logger.Logger, c rediscache.Cache, heartbeat time.Duration) (Sidejob, error)

NewSidejob ...

type Worker

type Worker struct {
	ID    string
	Queue *Queue
	// contains filtered or unexported fields
}

Worker ...

func NewWorker

func NewWorker(id string, q *Queue, mq *sidejob) *Worker

NewWorker ...

func (*Worker) Ack

func (w *Worker) Ack() error

Ack ...

func (*Worker) Consume

func (w *Worker) Consume() (string, error)

Consume ...

func (*Worker) GetWorkerLength

func (w *Worker) GetWorkerLength() (int64, error)

GetWorkerLength ...

func (*Worker) Move

func (w *Worker) Move(from, to string) (string, error)

Move ...

func (*Worker) Reject

func (w *Worker) Reject(payload string) error

Reject ...

func (*Worker) ReturnAll

func (w *Worker) ReturnAll() error

ReturnAll ...

func (*Worker) UpdateTop

func (w *Worker) UpdateTop(queueName, payload string) (string, error)

UpdateTop ...

func (*Worker) WorkerName

func (w *Worker) WorkerName() string

WorkerName ...

type WorkerGroup

type WorkerGroup interface {
	SetQueue(*Queue)
	Process(ctx context.Context, workerCtx *pool.WorkerContext, id string)
}

WorkerGroup ...

func NewWorkerGroup

func NewWorkerGroup(log *logger.Logger, heartbeat, poll time.Duration) WorkerGroup

NewWorkerGroup ...

Jump to

Keyboard shortcuts

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