watermill
Asynq
Our great sponsors
watermill | Asynq | |
---|---|---|
23 | 32 | |
6,729 | 8,615 | |
2.2% | - | |
6.5 | 7.0 | |
7 days ago | 4 days ago | |
Go | Go | |
MIT License | 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.
watermill
-
Microservices communication
I’ve successfully worked on projects using an asynchronous event-driven way of connecting services. I really like the decoupling of business logic and the events triggering it. I highly recommend https://github.com/ThreeDotsLabs/watermill to be more flexible when it comes to choosing the actual technology driving the async patter. It might be NATS today but requirements might change and you need to change. Watermill prepares you for this.
-
Public chatroom websocket project in Go
Highly recommend https://watermill.io lib for building async apps (using among others pub/sub patterns). It greatly decouples your code from the underlying technology and gives you the freedom to choose depending on the environment (e.g dev, prod). For dev or small scale purposes, it supports pub/sub purely based on go channels.
-
How did you solve the problem of transactions between different databases and services?
Look at this library: https://github.com/ThreeDotsLabs/watermill
-
Examples of using task scheduler with Go?
Watermill is a good pubsub abstraction. You can start with native go channels and grow into a cloud pubsub or Kafka/Pulsar if you need to.
-
Small EDA/Micro service Project
These conditions have led me to discover two packages watermill.io and go-kit. Both of these seem to do what I want and I am thinking of implementing the project using watermill and go Chanels and deploying to a server or some sort.
-
Event Observer Pattern in Go
github.com/ThreeDotsLabs/watermill package provides a framework for building event-driven applications. It allows easy communication between independent components by decoupling the sender and the receiver.
-
I've just started learning Golang, and I'm struggling to choose a framework.
My personal favorite tools: - https://github.com/go-kit/ for building services (although it's not necessary a great tool for prototyping) - https://github.com/gorilla/mux router (although it's been recently deprecated, so I'm looking for a similar, maintained library) - https://entgo.io/ ORM - https://watermill.io/ for messaging
- How to handle events: an interactive example of consumer groups
- I’m looking for a suggestion for a queuing library
-
Looking for a mature distributed task queuer/scheduler in go
Checkout https://watermill.io/
Asynq
-
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?
eventhorizon - Event Sourcing for Go!
machinery - Machinery is an asynchronous task queue/job queue based on distributed message passing.
go-kit - A standard library for microservices.
work - Process background jobs in Go
Benthos - Fancy stream processing made operationally mundane
Faktory - Language-agnostic persistent background job server
pulse - ☁EventBus on Portable Pub/Sub Components☄
NATS - Golang client for NATS, the cloud native messaging system.
wild-workouts-go-ddd-example - Go DDD example application. Complete project to show how to apply DDD, Clean Architecture, and CQRS by practical refactoring.
temporal - Temporal service
go-rabbitmq - A wrapper of streadway/amqp that provides reconnection logic and sane defaults
nsq - A realtime distributed messaging platform