Telling senders to back off on overloaded server?

Kevin Burton burtonator at gmail.com
Tue Oct 25 20:07:26 EDT 2011


Brilliant... that's what I thought :)

Kevin

On Tue, Oct 25, 2011 at 4:45 PM, "이희승 (Trustin Lee)" <trustin at gmail.com>wrote:

> Channel.setReadable(false)?
>
>
> Kevin Burton wrote:
> > So how do you do this at the TCP layer and not use threads within
> > Netty...
> >
> > You should be able to tell netty to not read from the socket even if
> > it is available because you're not yet ready for the data.
> >
> > This way all TCP protocols will work the same way without application
> > specific changes or controlling the client.
> >
> > Otherwise you have to use lots of threads which defeats the whole
> > point :-(
> >
> > Kevin
> >
> > On Tue, Oct 25, 2011 at 4:23 PM, "이희승 (Trustin Lee)"
> > <trustin at gmail.com <mailto:trustin at gmail.com>> wrote:
> >
> >     Yes.  If you have more control over the behavior of the client, I
> >     would make use of 100-continue, and send an error response when
> >     the server is under load.
> >
> >     HTH
> >
> >
> >     Kevin Burton wrote:
> >     > I assume I basically have to change interest ops on the channel
> >     when
> >     > the buffer is empty/full?
> >     >
> >     > Kevin
> >     >
> >     > On Tue, Oct 25, 2011 at 4:18 PM, Kevin Burton
> >     <burtonator at gmail.com <mailto:burtonator at gmail.com>
> >     > <mailto:burtonator at gmail.com <mailto:burtonator at gmail.com>>>
> wrote:
> >     >
> >     >     How do I tell the sender of data (I control both) to back
> >     off if I
> >     >     can't accept any more data on the server?
> >     >
> >     >     Specifically, I have an HTTP PUT implementation that first
> >     writes
> >     >     to a queue and then I drain the queue to disk.
> >     >
> >     >     When the queue fills up because the server is overloaded, I
> >     need a
> >     >     way to tell the sender to back off...
> >     >
> >     >     Normally the TCP buffers would just fill up on both ends and
> the
> >     >     sender wouldn't receive ACKs any more and wouldn't send more
> >     >     packets until the existing ones have been ack'd ...
> >     >
> >     >     I just don't now how to tell Netty to stop sending me data
> >     because
> >     >     I can't handle it...
> >     >
> >     >     I don't want to use any threads in my application if they're
> not
> >     >     needed.
> >     >
> >     >
> >     > _______________________________________________
> >     > netty-users mailing list
> >     > netty-users at lists.jboss.org <mailto:netty-users at lists.jboss.org>
>
> >     > https://lists.jboss.org/mailman/listinfo/netty-users
> >
> >     _______________________________________________
> >     netty-users mailing list
> >     netty-users at lists.jboss.org <mailto:netty-users at lists.jboss.org>
>
> >     https://lists.jboss.org/mailman/listinfo/netty-users
> >
> >
> > _______________________________________________
> > netty-users mailing list
> > netty-users at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/netty-users
>
> _______________________________________________
> netty-users mailing list
> netty-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/netty-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/netty-users/attachments/20111025/fa325f1f/attachment.html 


More information about the netty-users mailing list