Skip to content
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

Propagate queue pausing across multiple application instances #142

Open
keyan opened this issue Nov 16, 2017 · 1 comment
Open

Propagate queue pausing across multiple application instances #142

keyan opened this issue Nov 16, 2017 · 1 comment

Comments

@keyan
Copy link
Contributor

keyan commented Nov 16, 2017

Currently Verk doesn't support distributed deployments. If you are running multiple application instances then pausing a queue in one instance will not pause the queue in the other N instances of Verk.

What if instead of writing queue pause/running status to ets we write to Redis, then check Redis during queue manager startup and at some interval to know if the queue status should be changed? Is a multiple instance Verk deployment a common use-case?

@edgurgel
Copy link
Owner

Currently Verk doesn't support distributed deployments. If you are running multiple application instances then pausing a queue in one instance will not pause the queue in the other N instances of Verk.

Yes! Our pause for now is per instance.

What if instead of writing queue pause/running status to ets we write to Redis, then check Redis during queue manager startup and at some interval to know if the queue status should be changed? Is a multiple instance Verk deployment a common use-case?

Yes, multiple instance deployment is a really common use-case.

Using Redis is an option, yes. I really wanted to have a way to make Verk instances aware that they are part of a cluster. My hope was to use Partisan but I'm still playing with it.

Do you want to take a stab implementing the status on Redis? Then we if decide to move to something like Partisan we can always refactor it etc.

One thing that we need to think about is that the status will become persistent across restarts. It's probably not an issue but something that we need to document so it's not a surprise to anyone.

What do you think?

Thanks again for creating relevant issues 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants