2014-11-10 18:32 GMT+01:00 Mark Thomas <ma...@apache.org>:

> > For example, with the NIO2 connector, the code is rather different
> between
> > upgrade and non upgrade, plus it has the possibility of doing gather
> writes
> > (not done in upgrade, only in regular mode; basically in upgrade mode the
> > framework in place was inflexible, so I didn't use gather for the NIO2
> > connector). So if the idea is to merge everything in a single read/write
> > method in the wrapper, then it's not a good idea. Ultimately being able
> to
> > do splitter/gather in upgrade mode should be good (if needed).
>
> My focus is on refactoring what we have without changing behaviour
> unless it is to add features that only some connectors have (e.g.
> non-blocking read of HTTP headers to APR/native).
>
> The current HTTP implementations are more diverse and I'm expecting that
> refactoring to be more complex. Keeping support for gather writes would
> be part of that.
>

Maybe I did sound too negative. The refactoring sounds good. But indeed
HTTP looks a lot more complex (not sure it is really mandatory since I
suppose the HTTP/1.1 IO support required will not change moving forward),
so I was worried about it, plus the possibility to add some features like
scatter/gather eventually since NIO2 supports it.

>
> >> My thinking moving forward is to do AJP next and HTTP last. At some
> >> point I may move the SocketWrappers to separate classes as they are
> >> fairly large.
> >>
> > AJP ? I don't see it working any better than the java.io connector for
> > the new technologies, so the plan should probably be to remove it or have
> > it limited to legacy mode.
>
> I'm hopeful that AJP will be extended to support HTTP upgrade. In theory
> it could also be extended to better support non-blocking IO (I'm
> thinking with httpd's event MPM).
>
> For now, I see merit in keeping in. Looking to the future it may well be
> dropped in favour of HTTP 1.1 or 2.0 proxies.
>
> I had the impression HTTP/1.1 proxies have been better for a few years now.

Rémy

Reply via email to