mirror of
https://github.com/hibiken/asynq.git
synced 2026-04-26 07:25:56 +03:00
[GH-ISSUE #195] [FEATURE REQUEST] Create queue workers dynamically #1076
Labels
No labels
CLI
bug
designing
documentation
duplicate
enhancement
good first issue
good first issue
help wanted
idea
invalid
investigate
needs-more-info
performance
pr-welcome
pull-request
question
wontfix
work in progress
work in progress
work-around-available
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/asynq#1076
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @sujit-baniya on GitHub (Sep 17, 2020).
Original GitHub issue: https://github.com/hibiken/asynq/issues/195
Originally assigned to: @hibiken on GitHub.
Currently the system requires to create and assign workers for a queue on compile time. To add multiple workers to queue, one has to bring up workers for that queue manually which in my view in not scalable.
In my opinion, if we could have following approach of creating workers and assigning them to queue.
@sujit-baniya commented on GitHub (Sep 17, 2020):
https://github.com/hibiken/asynq/issues/194
@sujit-baniya commented on GitHub (Sep 18, 2020):
I don't find the way to get the worker details attached to a queue.
@hibiken commented on GitHub (Sep 20, 2020):
Thanks for opening this issue. I agree with some of your points but I don't think I can modify the package to implement all of the features requested.
My current thinking is to add the following features:
asynq.Server) to update its concurrency at runtime.asynq.Server) to update queue configs at runtime (add/remove queues from which to consume tasks)To see which
asynq.Servers are consuming from which queues, you can runasynq server lscommand .@sujit-baniya commented on GitHub (Sep 20, 2020):
@hibiken I cloned the package and modified to accept concurrency and queue at runtime.
Don't know if it's better and optimized but for me it worked
Also I've updated the server to accept handlers at runtime
@sujit-baniya commented on GitHub (Sep 20, 2020):
Now I can do something like:
https://github.com/itsursujit/asynq/blob/master/examples/worker.go
is example for what I need.
Again! Thanks for this library.. I'll try to modify and check accordingly
@sujit-baniya commented on GitHub (Sep 20, 2020):
Is there any way to stop server if idle for 30 or stop immediately after n tasks?
@hibiken commented on GitHub (Feb 1, 2021):
Currently I'm not intending to support this feature. I'll close this issue for now.
@sujit-baniya commented on GitHub (Mar 11, 2021):
@hibiken Maybe you rethink to implement this feature?
Like the queues are created dynamically for each tasks, It would be better if workers could also be created dynamically
BYSCOREwhich is not supported by redis 4 #1526BYSCOREwhich is not supported by redis 4 #2536