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

nsqd/nsqadmin: "busy out" mode #1022

Open
danbf opened this issue Apr 9, 2018 · 3 comments
Open

nsqd/nsqadmin: "busy out" mode #1022

danbf opened this issue Apr 9, 2018 · 3 comments

Comments

@danbf
Copy link
Contributor

danbf commented Apr 9, 2018

right now we need to go on a node manually and shut down the ingress services manually to a box to busy it out. it would be nice if that was exposed so we don't have to ssh into each box.

http://www.yourdictionary.com/busy-out

busy out - Computer Definition
To invoke a feature of a telecommunications system that rejects incoming calls.
@mreiferson mreiferson changed the title nsqadmin: set a node into busy out mode so it can finish it's work but not take on additional work nsqd/nsqadmin: "busy out" mode Apr 26, 2018
@mreiferson
Copy link
Member

I'm on the fence whether this belongs in NSQ proper or not :)

@jehiah
Copy link
Member

jehiah commented Apr 27, 2018

Since so many things live in a container world, i can see a control exposed from nsqd that makes it easier to put that node into a mode where it rejects incoming messages but allows any messages it does have to drain.

You could then combine that with clients that properly handler write errors (which is actually infrequent in my experience) to retry against a secondary nsqd target.

On the consumer side, this can be handled outside of NSQ pretty straight forwardly; I do this by watching for a touch file and having QR's go into "RDY 0" mode when that touch file is present.

@mreiferson
Copy link
Member

ping #1254

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

No branches or pull requests

3 participants