ratus
Ratus is a RESTful asynchronous task queue server. It translated concepts of distributed task queues into a set of resources that conform to REST principles and provides a consistent HTTP API for various backends. (by hyperonym)
taskq
Golang asynchronous task/job queue with Redis, SQS, IronMQ, and in-memory backends (by vmihailenco)
Our great sponsors
ratus | taskq | |
---|---|---|
12 | 7 | |
101 | 1,200 | |
- | - | |
8.3 | 0.0 | |
7 days ago | 7 months ago | |
Go | Go | |
Apache License 2.0 | BSD 2-clause "Simplified" License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
ratus
Posts with mentions or reviews of ratus.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-09-24.
-
Ratus - a RESTful asynchronous task queue server.
The Go ecosystem has many brilliant distributed task queue libraries, but sometimes we still have to settle for some bloated cross-platform solution in order to work with components written in other languages. To solve this problem, we created Ratus, which is a service, not a library. It translated concepts of distributed task queues into a set of resources that conform to REST principles and provides an easy-to-use HTTP API. Ratus is implemented in Go, and comes with a Go client library. Asynchronous task queues are typically used for long-running background tasks, so the overhead of the HTTP API is not significant compared to the time spent by the tasks themselves. On the other hand, the HTTP-based RESTful API can be easily accessed by all languages without using dedicated client libraries.
-
Ratus: RESTful asynchronous task queue server
To solve this problem, we created Ratus, which is a service, not a library. It translated concepts of distributed task queues into a set of resources that conform to REST principles and provides an easy-to-use HTTP API. Ratus is implemented in Go, and comes with a Go client library. The current default storage engine is MongoDB (in-memory store coming soon), we will also try to integrate existing Go task queue libraries.
- Show HN: Ratus – RESTful asynchronous task queue server
-
Golang task queue
I've been working on https://github.com/hyperonym/ratus which is a RESTful asynchronous task queue server, it also comes with a Go client library.
taskq
Posts with mentions or reviews of taskq.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-15.
-
What is the best task queue?
Hi, I'm starting a new project that involves distributing task on different (and possibly distributed) workers in Golang. So I'm looking for the best task queue library to use; for now the ones I like are the following (in no particular order): - asynq - machinery - taskq
-
Are there any actively maintained or official Golang libraries for managing work queues?
+ taskq
-
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?
Oh my god, I have to deal with a similar system at work and I wish we hadn't tried to handroll this. If its possible you should look into something off-the-shelf. Could Celery work for 1000*10000 tasks? But if you must do it yourself, https://github.com/vmihailenco/taskq looks good
- Redis messaging queue suggestions
-
Kafka Message Task Queue
I was looking at https://github.com/vmihailenco/taskq to use potentially to manage tasks being picked up by a set of workers. Since we already have a Kakfa expertise I was looking to potentially use that instead.
- Switching from Celery and Python to Go
What are some alternatives?
When comparing ratus and taskq you can also consider the following projects:
taskrunner - :peach: a configurable task runner written in go
machinery - Machinery is an asynchronous task queue/job queue based on distributed message passing.
tork - A distributed workflow engine
Benthos - Fancy stream processing made operationally mundane
Asynq - Simple, reliable, and efficient distributed task queue in Go
guble - websocket based messaging server written in golang
gocelery - Celery Distributed Task Queue in Go
go-events - :mega: Pure nodejs EventEmmiter for the Go Programming Language.
go-jdeque - Chunk based deque for Go
asyncjobs - Asynchronous Job Processor
lmstfy - A task queue with REST API