mangos
mangos is a pure Golang implementation of nanomsg's "Scalablilty Protocols" (by nanomsg)
machinery
Machinery is an asynchronous task queue/job queue based on distributed message passing. (by RichardKnop)
mangos | machinery | |
---|---|---|
2 | 14 | |
646 | 7,313 | |
1.1% | - | |
6.2 | 5.3 | |
12 days ago | 9 days ago | |
Go | Go | |
Apache License 2.0 | Mozilla Public License 2.0 |
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.
mangos
Posts with mentions or reviews of mangos.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-09-07.
- What would be a good message broker internal to my program?
-
Reconnect to a server
I'm writing a client application that uses https://github.com/nanomsg/mangos to connect to a server using the PUB/SUB protocol. I'm not sure how to handle server or network interrupts on the client. The application is just a for loop waiting for a message to arrive and the call a go routine to handle that message. Does anybody know a good example how to deal with network or server failures in GO? Or should the application just panic and let the OS create a new instance of the application? The client application will run as a daemon so users can not interact with it.
machinery
Posts with mentions or reviews of machinery.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-02-24.
- Looking for library recommendations: Django -> Golang port
-
Are there any actively maintained or official Golang libraries for managing work queues?
I've had this project starred for a while but haven't used it: https://github.com/RichardKnop/machinery
- Looking for a mature distributed task queuer/scheduler in go
- What would be a good message broker internal to my program?
-
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
-
is there any go library that allows running background tasks after a specified period of time?
you mean a scheduler? try RichardKnop/machinery or hibiken/asynq
-
Using a High-Level RabbitMQ Client in Go
I use this one: https://github.com/RichardKnop/machinery
-
Do you know of a robust library that handles persistent job scheduling and queuing using PostgreSQL
I’ve also used https://github.com/RichardKnop/machinery for for a few projects and it’s solid.
- Distributed asynchronous tasks?
-
Any one knows a job worker project (like Celery) + distributed cron written in Go
Machinery is an asynchronous task queue/job queue based on distributed message passing.
What are some alternatives?
When comparing mangos and machinery you can also consider the following projects:
NATS - Golang client for NATS, the cloud native messaging system.
Asynq - Simple, reliable, and efficient distributed task queue in Go
dbus - Native Go bindings for D-Bus
gocelery - Celery Distributed Task Queue in Go
pubsub - A simple pubsub package for go.
celery - Distributed Task Queue (development branch)
go-nsq - The official Go package for NSQ
zmq4 - A Go interface to ZeroMQ version 4
temporal - Temporal service
messagebus - Go simple async message bus
Confluent Kafka Golang Client - Confluent's Apache Kafka Golang client