On Mon, 1 Oct 2001, David Wall wrote:
> Date: Mon, 1 Oct 2001 20:26:44 -0700
> From: David Wall <[EMAIL PROTECTED]>
> Reply-To: [EMAIL PROTECTED], David Wall <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]
> Subject: Re: Any reason to use Apache w/ Tomcat for webapp with all
> dynamic web pages?
>
> > * If you have lots of static content that can be served from a directory
> > other than the webapp's context path (right now, current Tomcat
> > versions serve static content within the webapp directory faster
> > stand-alone than they do behind Apache).
>
> Craig, what happens if the images are IN the webapp's context path? Seems
> like Apache still serves them up without Tomcat,
Yes, that's true for many web connector setups.
> though I don't know if
> there's a performance hit (like Apache asks Tomcat, tomcat says not found,
> and then Apache looks for it in its directories) or not.
>
It depends on the programming of the web connector you are using. Of the
choices available:
* mod_jserv (Tomcat 3.x only) - slower than Tomcat stand-alone
* mod_jk (Tomcat 3.x or 4.x) - application dependent, requires significant
investment in configuration tuning
* mod_webapp (Tomcat 4.x only) - current implementation forwards all
requests for static files to Tomcat (and is thus slightly slower than
Tomcat stand-alone), but the protocol is designed to take maximum
advantage of Apache's ability to serve static content that is not
protected by a security contraint or processed by a filter.
> I know that Apache will serve up an image in a path like
> /app/images/pretty.gif even if /app is mapped to Tomcat (maybe I answered my
> own question, since I map /app/*.jsp and /app/servlet/* rather than /app/*).
>
There is ***ABSOLUTELY***, ***POSITIVELY***, no blanket statement about
performance of Apache+Tomcat versus Tomcat standalone that is accurate
under all circumstances.
However, the old conventional wisdom ("Apache+Tomcat serves static content
from a web app faster than Tomcat standalone") is either inaccurate, or
irrelevant, in a rapidlly growing number of use cases. The ***only*** way
to find out for sure what works best for you is to try ***your***
application both ways.
Don't believe anyone who tells you one way is *always* better or faster.
> David
>
>
Craig