nsq icon indicating copy to clipboard operation
nsq copied to clipboard

nsqd: api to kick individual client connections

Open jehiah opened this issue 10 years ago • 3 comments

When using nsqd to expose data to external clients, it would be great to have a red x next to connections listed in nsqadmin so that you could kill them. This would require a matching nsqd endpoint to implement that functionality.

This could be useful for when you have a single connection that is timing out on messages, or when migrating a topology and want to kick some connections off of a host without restarting.

(thinking out loud that because nsq designs a strong reconnect approach, perhaps you would also want the ability to 'pause' an individual connection)

jehiah avatar Jul 24 '14 03:07 jehiah

:+1:

mreiferson avatar Jul 25 '14 12:07 mreiferson

Is this low-impact enough and easy enough for someone new to the codebase to work on? I'm looking for a way to contribute to the project.

As a side note, I wish there was an easy label so I can see what I can look at first.

rexposadas avatar Aug 21 '14 18:08 rexposadas

@rexposadas that label's a pretty good idea... I'll take a look and mark appropriately.

re: this issue. I don't think it would be particularly difficult, channels maintain a map of connections keyed by remote address, which would probably be the value submitted to identify the client.

The challenge is as @jehiah said, client libraries are designed to automatically reconnect.

mreiferson avatar Aug 21 '14 18:08 mreiferson