goworker
gocelery
goworker | gocelery | |
---|---|---|
3 | 6 | |
2,774 | 2,329 | |
- | 0.8% | |
0.0 | 0.0 | |
almost 2 years ago | 9 months ago | |
Go | Go | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
goworker
- Python/Django to Golang questions
-
Implementing Worker Pools in Go - Go Concurrency
This is a good starting point. As a next step you could introduce some already existing library, for example these ones: https://github.com/benmanns/goworker https://github.com/vardius/worker-pool https://github.com/xxjwxc/gowp
gocelery
-
Golang task queue
I had a look at: 1. machinery - https://github.com/RichardKnop/machinery 2. go-celery - https://github.com/gocelery/gocelery 3. asynq - https://github.com/hibiken/asynq 3. taskq - https://github.com/vmihailenco/taskq
- How to plan and execute a large number of tasks in Go?
- Python/Django to Golang questions
-
Switching from Celery and Python to Go
What about https://github.com/gocelery/gocelery ?
-
For those running Go in production at scale, what do you use for distributed task queues?
go-celery (https://github.com/gocelery/gocelery): Celery port in Go. Not much recent activity so a bit worried it's abandoned.
-
Autoscaling Redis applications on Kubernetes ππ
Please note that this blog post uses a Golang application (thanks to gocelery!) as an example, but the same applies to Python or any other application that uses the Celery protocol.
What are some alternatives?
ants - πππ ants is a high-performance and low-cost goroutine pool in Go./ ants ζ―δΈδΈͺι«ζ§θ½δΈδ½ζθη goroutine ζ± γ
machinery - Machinery is an asynchronous task queue/job queue based on distributed message passing.
tunny - A goroutine pool for Go
temporal - Temporal service
semaphore - π¦ Semaphore pattern implementation with timeout of lock/unlock operations.
Nomad - Nomad is an easy-to-use, flexible, and performant workload orchestrator that can deploy a mix of microservice, batch, containerized, and non-containerized applications. Nomad is easy to operate and scale and has native Consul and Vault integrations.
Goflow - Simply way to control goroutines execution order based on dependencies
go-micro - A Go microservices framework
grpool - Lightweight Goroutine pool
celeriac - Golang client library for adding support for interacting and monitoring Celery workers, tasks and events.
semaphore go - Fast resizable golang semaphore primitive
grpc-go - The Go language implementation of gRPC. HTTP/2 based RPC