-
-
Notifications
You must be signed in to change notification settings - Fork 176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiple Queues (v.0.16) #126
Comments
arq was completely redesigned to use sorted sets rather than lists to allow deferred calling and proper retry on failure/cancellation. Removing separate queues was just a bi-product of that. The short answer is that arq v0.16 doesn't do multiple queues because I don't find them useful. If you have a job that's higher priority than others, call it with a negative
By doing this you can get most of the functionality of different priority jobs. Does that help? |
My use case is to run different queues, which are tasks for unrelated workers, not to sort them by priority. |
Also, redis cluster doesn't support multiple databases, so separating queues using them won't work.
|
It shouldn't be very hard to add custom queue names, so you'd use something like await redis.enqueue_job('download_content', url, _queue_name='other') and then setup the worker to work on that queue. Worker's would still only process jobs from one queue, but it sounds like that would work in your use case? If that works, PR welcome. |
What will be your guidance to implement this feature? |
I'm not sure what you mean? If you'd like the feature, I'd happily accept a pull request where you implement it. |
Do you mean enqueued in the last day instead of year? |
How I'm supposed to create multiple queues with arq v0.16?
Looking at old docs I see that you could specify queue name, but now you can't.
What was the purpose of deleting queues from API?
I tried to start workers with different functions, but if worker doesn't see registered function it just deletes job.
So, if I want to use multiple queues on the same redis instance I have to use multiple redis databases (that have only numerical names)?
The text was updated successfully, but these errors were encountered: