httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pier Fumagalli <>
Subject Re: New proxy hook
Date Mon, 22 Oct 2001 18:25:46 GMT
Daniel Lopez at wrote:

>> Second, tighter integration. On WARP, for example, we're able to pass things
>> like configuration informations, so, using a directive in httpd.conf, you
>> can actually deploy web-applications on the servlet container without having
>> to tweak your configurations in two places.
> Apache could pass this information in an HTTP request, no need for a special
> protocol.

And dinamically reconfigure your apache web server from an HTTP request? I
don't really see how... Like, if I know that /examples/*.jsp is something
that need to be processed by a Servlet, and /examples/*.html is a static
file, which is actually available to the web server in some path (let's say
/usr/webapps/examples/*.html) how can I tell to my running web server to
forward certain paths to the proxy_module and certain others to the defalt
file serving thinghie? (BTW, I'm talking about not only AP20, but also 13,
and other web servers, such as iPlanet and IIS).

>> Third is parsing. I mean, you guys spent ages optimizing and making sure
>> that your HTTP stack is 100% compliant and fast-as-hell (don't tell me that
>> I can parse HTTP headers faster in Java than in C! :), and the WARP protocol
>> is optimized for that, it is designed so that the Java side of things
>> doesn't have to parse stuff at all, all the HTTP protocol parsing is done by
>> Apache, and doesn't need to be reparsed in Java, since all data is passed
>> along on the socket with all its parsing information (packets and string
>> lengths, we don't have to iterate thru char arrays in Java at all, just
>> construct strings when those are required).
> Um... maybe :) I would like to see some numbers on how slow parsing the
> headers is in comparison with the time it takes to process the request or
> deal with the warp protocol

Approximately 1/3...1/4 of the time, and objects allocation is approximately
2/3s (with the current code, and the WARP protocol stack is not optimized)

>> Fourth is load balancing done how it should be to be compliant with the
>> server spec (sessions generated by a certain tomcat engine are guaranteed to
>> return to that specific engine, integration with mod_ssl session,
>> yadayadayada)...
> This can be done with an HTTP reverse proxy. BEA does load balancing ,
> failover, sticky sessions, etc.


>> And fifth is the possibility to include the JVM directly into the Apache
>> process (multithreaded, 1.3 on Win32 and 2.0 everywhere), via JNI... Without
>> even thinking about opening sockets :)
> I see the value of warp for hiding the underlying transmission protocol, but
> in the case of embedding the JVM directly it may be worth to do it on its own.

And then how can you load balance a JNI based servlet engine with a
remote/networked one?

>> Is it enough??? :) :) :)
> No :)  I think a lot of the stuff you are trying to do is very useful
> but they could be implemented using HTTP as the transport and as
> enhancements of the reverse proxy. This allows you to take advantange of
> many other things (like SSL for free, etc.)
> My point is that if it is good enough for weblogic and IBM (they have an
> HTTP based protocol for Websphere 4.0) it may be good enough for us :)

Not good enough for me :) Also, I would like to see a full httpd.conf
configured to serve a web-application, if it is more than one line per web
application, you get my +1 on continuing on mod_webapp.... :)


View raw message