On Thu, 2010-03-18 at 23:27 +0100, Oleg Kalnichevski wrote:
> James Leigh wrote:
> > Hi all,
> > 
> > I would like to handle pipelined requests concurrently. However,
> > AsyncNHttpServiceHandler doesn't call NHttpRequestHandler#handle until
> > the previous response is submitted. How can I handle requests on the
> > same TCP stream concurrently?
> > 
> > I also have trouble getting pipelining working on the client.
> > AsyncNHttpClientHandler#requestReady doesn't do anything if there is a
> > pending response on the connection (i.e. state is not
> > ClientConnState.READY). If this condition was removed it seems to
> > pipeline the requests asynchronously. Is there an equivalent
> > AsyncNHttpClientHandler that support this or a setting I have
> > overlooked?
> > 
> > Thanks,
> > James
> >        
> 
> James
> 
> Presently AsyncNHttpClientHandler does not support request pipelining, 
> as it pretty much mutually exclusive with 'expect: continue' 
> handshaking. You will have to develop a custom NHttpClientHandler 
> implementation if you need support for request pipelining.
> 
> Oleg
> 

Okay understood, but I could imagine a client handler that would support
both. If I create a patch for AsyncNHttpClientHandler to switch between
HTTP pipelining and 'expect: continue' modes based on the presence or
absents of the expect header in the most recent request, would HttpCore
team consider it?

Also what about server side pipelining? Is there any way for
AsyncNHttpServiceHandler to support pipelining? Any hints on what would
need to change to support it?

I notice that HttpExpectationVerifier is a blocking interface. Is there
an asynchronous alternative?

Thanks for such a good HTTP library!

Cheers,
James


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to