When I use:
RewriteCond %{REQUEST_URI} /jsp-examples/(.*).jsp(.*)
RewriteRule ^/(.*) ajp://localhost:8010/$1 [P]
and pound on Tomcat 5.5.20's /jsp-examples/jsp2/el/basic-arithmetic.jsp
through Apache (with only a single thread doing the pounding), I start
to get 503's after a while. The error log says:
[Fri Oct 27 10:49:42 2006] [error] (OS 10048)Only one usage of each socket address (protocol/network
address/port) is normally permitted. : proxy: AJP: attempt to connect to 127.0.0.1:8010 (*)
failed
This is on Windows. I then look at netstat and see *loads* of
connections in TIME_WAIT. This would seem to strongly indicate that no
connection pooling is being done -- at least not properly.
On the other hand, if I use:
ProxyPass /jsp-examples ajp://localhost:8010/jsp-examples
This works fine!
I assume I should file a bug against mod_proxy -- or is this a known issue?
This has serious implications for those who route only JSP and servlet
requests to Tomcat and let Apache serve all static content from a web
app. Many Tomcat folk would thus advise not using Apache at all, but I
want to use it precisely for it's AJP-based load balancing. One might
say to use Apache 2.0 and mod_jk, which work fine, but I need
authentication against multiple LDAPs -- which is another feature 2.2
has over both 2.0 and Tomcat.
--
Jess Holle
|