xsync
Concurrent data structures for Go (by puzpuzpuz)
Asynq
Simple, reliable, and efficient distributed task queue in Go (by hibiken)
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.
xsync
Posts with mentions or reviews of xsync.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-12-23.
-
Otter, Fastest Go in-memory cache based on S3-FIFO algorithm
The issue is Go stdlib does not have parallel hash map.
We have https://github.com/puzpuzpuz/xsync#map a different Cache line hashmap impl.
- Are there any actively maintained or official Golang libraries for managing work queues?
-
Thread-Local State in Go, Huh?
I've created a pull request to decrease the memory footprint and get rid of the unlucky distribution problem. Goroutines (think, threads) now self-organize: they detect contention via a failed CAS and change the stripe. Going to update the article accordingly to avoid confusion.
-
So long, sync.Map
Could you check the method godoc and the example in this draft PR? I'm going to finalize the PR this weekend and it would be great to hear your opinion.
- puzpuzpuz/xsync: Concurrent data structures for Go. An extension for the standard sync package.
Asynq
Posts with mentions or reviews of Asynq.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-06.
-
Looking for a language agnostic Go task queue with Redis
EDIT : I think the best for my case will be to use the asynq library with a custom js client, it's quite easy to implement (Detailed here)
-
I have a web app that requires allowing users to schedule a recurring task at their own specified time/interval. How would you go about it?
Asynq does this pretty nicely https://github.com/hibiken/asynq/wiki/Periodic-Tasks
-
Examples of using task scheduler with Go?
Asynq looks promising. Never used it myself. https://github.com/hibiken/asynq
-
Recommendation for a selfhosted worker/task queue runner?
Never used it, but it appears to fit most of the criteria. https://github.com/hibiken/asynq
- How to run periodic tasks?
-
What would you rewrite in Golang?
https://github.com/hibiken/asynq is pretty close
-
Suggestions for CRON jobs queue tool
I tried it 2 months ago and it was not suitable for dynamic CRON job enqueue scheduling
-
I’m looking for a suggestion for a queuing library
My current best option is AsynQ (https://github.com/hibiken/asynq but it uses redid and not Postgres for the db
-
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
-
Distributed queue(redis) go
Asynq might do what you need https://github.com/hibiken/asynq
What are some alternatives?
When comparing xsync and Asynq you can also consider the following projects:
taskq - Golang asynchronous task/job queue with Redis, SQS, IronMQ, and in-memory backends
machinery - Machinery is an asynchronous task queue/job queue based on distributed message passing.
Tasqueue - A simple, customisable distributed job/worker in Go
work - Process background jobs in Go
libCacheSim - a high performance library for building cache simulators
Faktory - Language-agnostic persistent background job server
NATS - Golang client for NATS, the cloud native messaging system.
temporal - Temporal service
go - The Go programming language
nsq - A realtime distributed messaging platform