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



Reply via email to