Return-Path: Delivered-To: apmail-jakarta-httpclient-dev-archive@www.apache.org Received: (qmail 44466 invoked from network); 31 Aug 2006 18:02:34 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 31 Aug 2006 18:02:34 -0000 Received: (qmail 66024 invoked by uid 500); 31 Aug 2006 18:02:33 -0000 Delivered-To: apmail-jakarta-httpclient-dev-archive@jakarta.apache.org Received: (qmail 65999 invoked by uid 500); 31 Aug 2006 18:02:33 -0000 Mailing-List: contact httpclient-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Help: List-Post: List-Id: "HttpClient Project" Reply-To: "HttpClient Project" Delivered-To: mailing list httpclient-dev@jakarta.apache.org Received: (qmail 65988 invoked by uid 99); 31 Aug 2006 18:02:33 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 31 Aug 2006 11:02:33 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [195.186.18.66] (HELO mail21.bluewin.ch) (195.186.18.66) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 31 Aug 2006 11:02:32 -0700 Received: from [192.168.0.2] (83.79.145.51) by mail21.bluewin.ch (Bluewin 7.3.116) id 44E34CC3003C3F3A for httpclient-dev@jakarta.apache.org; Thu, 31 Aug 2006 18:02:10 +0000 Subject: [HttpCore] NIO extensions (first take) are ready for review From: Oleg Kalnichevski To: HttpClient Project Content-Type: text/plain Date: Thu, 31 Aug 2006 20:02:09 +0200 Message-Id: <1157047329.4961.10.camel@localhost.localdomain> Mime-Version: 1.0 X-Mailer: Evolution 2.6.1 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N Folks, NIO extensions (first take) are ready for review. Feel free to take a look and let me know what you think. Feedback, suggestions, critique will be highly appreciated. I wrote a short description of the HttpCore NIO API the best way I could: http://wiki.apache.org/jakarta-httpclient/HttpCoreNioApi There are also a couple of samples to show the new API in action. It is premature to draw any conclusions yet but preliminary test results show that NIO tends to perform significantly worse under heavy load than the classic I/O. I'll be doing more tests with various scenarios (small/ large content entities, POST/GET request types, lots of idle connections and a few ones under heavy load, and so on) to make the picture more complete. Oleg ============================================= HttpCore on MINA ============================================= Server Software: MINA-HttpServer/1.1 Server Hostname: localhost Server Port: 8080 Document Path: /index.html Document Length: 12928 bytes Concurrency Level: 50 Time taken for tests: 42.598608 seconds Complete requests: 100000 Failed requests: 0 Write errors: 0 Keep-Alive requests: 100000 Total transferred: 1308751914 bytes HTML transferred: 1293048774 bytes Requests per second: 2347.49 [#/sec] (mean) Time per request: 21.299 [ms] (mean) Time per request: 0.426 [ms] (mean, across all concurrent requests) Transfer rate: 30002.81 [Kbytes/sec] received ============================================= HttpCore (NIO) ============================================= Server Software: Jakarta-HttpComponents-NIO/1.1 Server Hostname: localhost Server Port: 8080 Document Path: /index.html Document Length: 12928 bytes Concurrency Level: 50 Time taken for tests: 46.386961 seconds Complete requests: 100000 Failed requests: 0 Write errors: 0 Keep-Alive requests: 100000 Total transferred: 1309763840 bytes HTML transferred: 1292960480 bytes Requests per second: 2155.78 [#/sec] (mean) Time per request: 23.193 [ms] (mean) Time per request: 0.464 [ms] (mean, across all concurrent requests) Transfer rate: 27573.83 [Kbytes/sec] received ============================================= HttpCore (classic) ============================================= Server Software: Jakarta-HttpComponents/1.1 Server Hostname: localhost Server Port: 8080 Document Path: /index.html Document Length: 12928 bytes Concurrency Level: 50 Time taken for tests: 26.785007 seconds Complete requests: 100000 Failed requests: 0 Write errors: 0 Keep-Alive requests: 100000 Total transferred: 1309278552 bytes HTML transferred: 1292877568 bytes Requests per second: 3733.43 [#/sec] (mean) Time per request: 13.393 [ms] (mean) Time per request: 0.268 [ms] (mean, across all concurrent requests) Transfer rate: 47735.36 [Kbytes/sec] received --------------------------------------------------------------------- To unsubscribe, e-mail: httpclient-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: httpclient-dev-help@jakarta.apache.org