Return-Path: Delivered-To: apmail-jakarta-tomcat-dev-archive@jakarta.apache.org Received: (qmail 86918 invoked by uid 500); 13 Jun 2001 18:52:59 -0000 Mailing-List: contact tomcat-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: list-post: Reply-To: tomcat-dev@jakarta.apache.org Delivered-To: mailing list tomcat-dev@jakarta.apache.org Received: (qmail 86871 invoked from network); 13 Jun 2001 18:52:54 -0000 Date: Wed, 13 Jun 2001 11:52:31 -0700 From: Justin Erenkrantz To: Salim Virani Cc: tomcat-dev@jakarta.apache.org Subject: Re: ICAP servlet classes (was: Tomcat Architecture) Message-ID: <20010613115231.S333@ebuilt.com> References: <20010613113047.Q333@ebuilt.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: ; from salim.virani@usa.net on Wed, Jun 13, 2001 at 02:34:17PM -0400 X-AntiVirus: scanned for viruses by AMaViS 0.2.1-pre3 (http://amavis.org/) X-Spam-Rating: h31.sny.collab.net 1.6.2 0/1000/N On Wed, Jun 13, 2001 at 02:34:17PM -0400, Salim Virani wrote: > Hi Justin, > > I faced a similar problem. I figured I could write my own server/servlet API > .. which is what I did. > > Just curious .... was your implementation in Java ??? And are you working > for a company or this is some school project ?? We had a client who requested the use of the NetApp NetCache proxies with ICAP. We used Apache 1.3 as the base. We didn't believe that Java was scalable enough for our needs (commercial site). We ended up tossing the guts of Apache's protocol engine and came up with one that worked only with ICAP. What Craig just suggested for Tomcat might work better than what we did with Apache, but we needed high-performance - hence C code. HotSpot only does so much. =) Roy Fielding (here at eBuilt) and Don Gillies (at NetApp) had some interesting exchanges over how to interpret the HTTP spec. Don Gillies' implementation of ICAP in the NetApp boxes was quite buggy and awful. The WG's reference implementation of ICAP is a perl script. And, that script isn't even remotely RFC2616 compliant. The WG has now dropped all pretenses of making ICAP HTTP-compliant. The next revision of the ID will have this noted. If we had to do it all over again, we would never use ICAP. The idea of ICAP in and of itself isn't bad, but their implementation has no clue what it wants to be. I'd recommend subscribing to the ICAP mailing list (ietf-openproxy@imc.org) if you haven't already. -- justin