On Mon, Jul 17, 2006 at 04:08:06PM +0200, Ortwin Gl?ck wrote:

I am writing from an internet cafe, so i'll have to be brief.

MINA may be a good choice for architectures that aim at supporting a
wide range of network protocols. As far as HttpComponents are concerned,
we are not going to expand the scope of the project beyond HTTP. So, in
my opinion, the benefits of having an abstract I/O layer provided by
MINA does not outweigh the cost of an extra dependency.  

Moreover, it should be feasible to put HttpCore (and potentially
HttpNIO) on top of MINA or any other I/O abstraction layer by providing
a custom implementation of the HttpDataReceiver and HttpDataTransmitter
interfaces and to re-use higher level protocol logic of HttpComponents.

Any code contributions to HttpNIO and cross-project sharing of ideas and
design patterns are highly welcome but I am not in favor of adding MINA
as a project dependency.

I will be permanently back on-line Monday, July 24th

Cheers,

Oleg

> Hi Pete,
> 
> peter royal wrote:
> >(resending since i think my first try didn't get noticed by the 
> >httpclient-dev moderators)
> 
> Our moderator is on vacation and moderation requests are automatically 
> /dev/nulled for the time being. Sorry for the inconvenience.
> 
> >howdy!
> >
> >I'm writing to see if there is interest in collaborating in a larger 
> >effort to develop HTTP code that utilizes NIO.
> 
> Absolutely. Roland Weber is just setting up to prepare the HttpAsync 
> component architecture. So there couldn't be a better time for this 
> connection! There is already a design document available:
> http://wiki.apache.org/jakarta-httpclient/HttpAsyncThreadingDesign
> 
> >MINA <http://directory.apache.org/subprojects/mina/> is a framework here 
> >at the ASF for developing clients and servers based on NIO. There is 
> >also the AsyncWeb <http://asyncweb.safehaus.org/> project that builds on 
> >top of MINA to create an HTTP server (not Servlet based).
> >
> >AsyncWeb will likely be proposed for incubation shortly, and I wanted to 
> >see if there was interest from this community on some of the common 
> >parts between a HTTP client and server implementation.
> >
> >MINA already has the nitty-gritty details of NIO worked out, so its just 
> >a matter of building protocols on top of it. MINA's architecture then 
> >makes it possible to share code on both the client and server sides. 
> >(MINA has the notion of a filter-chain that processes data read from the 
> >socket, and thus common protocol-level items can be implemented as a 
> >filter and then re-used on both a client and server).
> 
> This sounds all very promising. If done right it could keep HttpAsync to 
> a minimum if not elimiate it completely.
> 
> >I know that the HttpClient project has done extensive work on fully 
> >supporting the HTTP protocol, so pairing that expertise with an existing 
> >IO layer would be beneficial for all, I hope. (thus freeing this project 
> >from having to maintain the lower IO layer, and allowing concentration 
> >on protocol-level details). This would also mesh well with the 
> >HttpComponents charter, since it would provide an implementation of a 
> >full server that would (hopefully!) utilize your NIO-based components.
> >
> >I've cc'ed [EMAIL PROTECTED], as its a common spot for people that 
> >have this shared interest to discuss.
> >
> >thanks!
> 
> Please pair up directly with Roland to coordinate your efforts.
> 
> >-pete
> 
> Thanks for the pointer!
> 
> Happy hacking
> 
> Ortwin
> 
> -- 
> [web]  http://www.odi.ch/
> [blog] http://www.odi.ch/weblog/
> [pgp]  key 0x81CF3416
>        finger print F2B1 B21F F056 D53E 5D79 A5AF 02BE 70F5 81CF 3416
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to