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

Feature Request - Graceful Shutdown #258

Open
ronag opened this issue Jul 2, 2016 · 4 comments
Open

Feature Request - Graceful Shutdown #258

ronag opened this issue Jul 2, 2016 · 4 comments

Comments

@ronag
Copy link

ronag commented Jul 2, 2016

I would like to be able to gracefully shutdown a deepstream server (for e.g. upgrade, down-scaling etc..).

This means that close should not return until it can do so without affecting clients.

This would mean e.g.

  1. De-register instance from load-balancer e.g. (HAProxy, NGinx)
  2. Tell client to stop sending new commands and switch over to another server (TCP) or just reconnect of a load balancer is setup (WS).
  3. Wait for any RPC calls to respond
  4. Handle all queued messages
    etc...

This would require handling both on the client and server side.

@yasserf
Copy link
Contributor

yasserf commented Jul 2, 2016

I think this depends on us implementing a close event on the protocol both ways which can inform clients to reconnect (will force it to reroute to another deepsteam).

The rpc part is harder, since you don't want to deny service but you also don't want to have clients generate more rpcs since it could stop the shutdown.

Generally speaking, interesting concept and will be discussed on the roadmap and see how it prioritises.

@yasserf
Copy link
Contributor

yasserf commented Jul 10, 2016

I agree this is a good improvement to provide a graceful stop, we will prioritize accordingly.

@ronag
Copy link
Author

ronag commented Oct 15, 2016

@yasserf: Do you have any preliminary estimate for when this feature might arrive?

@yasserf
Copy link
Contributor

yasserf commented Oct 15, 2016

This is the next feature we want to add into deepstream post presence, so will be sometime by end of year.

@yasserf yasserf modified the milestone: 2.0 Oct 25, 2016
@yasserf yasserf added this to the 4.4 milestone Jun 1, 2019
@yasserf yasserf removed this from the 4.4 - Presence revamped milestone Oct 25, 2019
@yasserf yasserf added this to the Graceful shutdown milestone May 7, 2020
jaime-ez pushed a commit to jaime-ez/deepstream.io that referenced this issue Feb 20, 2024
* partial fixes
* Conforming to native websocket api for browser support
* Adding url parsing
* Fixing build to ignore ws when bundling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants