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

Improvement Request: Support for Slow Client #172

Open
lpage30 opened this issue Oct 10, 2014 · 4 comments
Open

Improvement Request: Support for Slow Client #172

lpage30 opened this issue Oct 10, 2014 · 4 comments
Labels

Comments

@lpage30
Copy link
Contributor

lpage30 commented Oct 10, 2014

If you have several clients and one is slower than the others you may want to 'cut them off' or do something else to prevent others from being impacted.

Several approaches to this, with the code as of this writing it could be done via async call back.
It would be nice to extend the architecture to address this issue more completely 'out of the box' with some config/tuning params.

@lpage30 lpage30 changed the title Support for Slow Client Oct 10, 2014
@mrniko
Copy link
Owner

mrniko commented Oct 23, 2014

Please provide more details about your vision of this feature.

@lpage30
Copy link
Contributor Author

lpage30 commented Nov 11, 2014

The concept of a slow client is that browser that is not handling data as fast as others and the PacketQueue for that client starts to grow.
As a knee jerk 'gut' approach we are establishing a ceiling for the queue size, and on every msg send checking all the client queue sizes and dropping them outright if their queue is larger than the ceiling.
Other more delicate approaches might be similar to those implemented by ActiveMQ (http://activemq.apache.org/slow-consumer-handling.html) which is pretty involved.

@pramodbms
Copy link

@mrniko Are we planning to implement this feature in the near future? It would be a "No-GO" without this feature as we are sending time sensitive data to the clients. For a slower client, we would like to send the latest data by throttling at the server side. Will there be any event raised for slow clients?[similar to a BlockedHandler or some thing] ?

@mrniko mrniko added this to the 1.7.11 milestone Mar 19, 2016
@mrniko mrniko modified the milestones: 1.7.11, 1.7.12 May 28, 2016
@mrniko mrniko modified the milestones: 1.7.12, 1.7.13 Sep 23, 2016
@mrniko mrniko modified the milestones: 1.7.13, 1.7.14 Sep 7, 2017
@mrniko mrniko removed this from the 1.7.14 milestone Sep 22, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3 participants