#1 Asynq
Package asynq provides a framework for Redis based distrubted task queue.
Minimalistic and High-performance goroutine worker pool written in Go.
Health score 95/100, confidence 100/100.
| Latest version | v1.9.2 |
| Imported by | 179 packages |
| Stars | 2.2K |
| Forks | 82 |
| Last activity | 2 days ago |
| Latest release | v2.7.1 (1 months ago) |
| License | MIT |
| Known vuln records | 0 |
| Symbol | Kind | Synopsis |
|---|---|---|
| Option | Type | type Option func(*WorkerPool) |
| Context | Function | func Context(parentCtx context.Context) Option |
| IdleTimeout | Function | func IdleTimeout(idleTimeout time.Duration) Option |
| MinWorkers | Function | func MinWorkers(minWorkers int) Option |
| PanicHandler | Function | func PanicHandler(panicHandler func(interface{})) Option |
| Strategy | Function | func Strategy(strategy ResizingStrategy) Option |
| ResizingStrategy | Type | type ResizingStrategy interface{ ... } |
| RatedResizer | Function | func RatedResizer(rate int) ResizingStrategy |
| ResizingStrategy.Resize | Method | Resize func(runningWorkers, minWorkers, maxWorkers int) bool |
| TaskGroup | Type | type TaskGroup struct{} |
| TaskGroup.Submit | Method | func (g *TaskGroup) Submit(task func()) |
| TaskGroup.Wait | Method | func (g *TaskGroup) Wait() |
Package asynq provides a framework for Redis based distrubted task queue.
Package queue provides multiple thread-safe generic queue implementations.
Package gocelery is Celery Distributed Task Queue in Go Celery distributed tasks are used heavily in many python web applications and this library allows you to implement celery workers in Go as well as being able to submit celery tasks in Go.
Package deheap provides a doubly-ended heap (min-max heap).
Package worker accepts Jobs and places them in a queue to be executed N at a time.