On Fri, 2007-09-14 at 11:01 +0530, Techie India wrote: > Hi, > > I want to know what are the major difference HttpClient 3.0 and HttpClient > 4.0, what are major issues which HttpClient 4.0 will adress which were > missing in HttpClient 3.0. >
HttpClient 3.1 is in many ways a very useful piece of software and is in widespread use in both open-source and commercial applications. It has also proved very stable over years. However, HttpClient 3.1 has several major architectural deficiencies, its API can be described as inflexible and badly designed, and internally the core components are a complete and utter mess. For details see: http://jakarta.apache.org/httpcomponents/commons-httpclient-lessons.html Essentially HttpClient 4.0 strives to achieve three major goals (1) Address architectural deficiencies of HttpClient 3.x while preserving and improving existing functionality (2) Provide a much more flexible and customizable platform though a highly componentized architecture (3) Improve performance and reduce memory footprint. HttpClient 4.0 is expected to be 15% to 30% faster then HttpClient 3.1 http://wiki.apache.org/jakarta-httpclient/HttpClient3vsHttpClient4vsHttpCore Having said all that, I would like to stress it one more time that there will be a lot of API instability in the 4.0 branch. If HttpClient 3.1 serves you well, stick to it for another 6 months or so, until 4.0 API stabilizes. > > Is there a nio and classic I/O model for HttpClient 4.0 as well, like in > httpCore? > I personally believe NIO provides no advantage over classic I/O for purely client-side HTTP services, but if there is demand for a NIO based implementation, we will surely consider developing it. The only missing bit is a connection manager for non-blocking asynchronous HTTP connections. Oleg > Thanks --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
