Hello all,

I do not want to spoil the party, but today I had a real nightmare 
regarding exactly this topic at a customer's site. On a P3/550 with 128 
MB RAM running a Windows 2000 Server plus MS SQL-Server 8(?), I tried 
every combination of elements from the following categories to get a 
rock stable system setup, without any chance.

(JDK1.3.1 | JDK1.4),  (Server VM | Hotspot VM), (Tomcat 3.23 | Tomcat 
3.3b1 | Tomcat 4.0b6 | Resin 2.01), (Cocoon2.0b2 with current 
Batik1.0RC?), (freetds_jdbc)

The symptoms were all the same; when coming under high load / situations 
when many network connections arrive, the process containing the VM 
running the servlet container either disappears without any trace at all 
or shows access violations outside of the VM; I had violations in 
ntdl.dll (something like that), zip.dll (in the JDK-dir, especially with 
Resin) and the like. I wasn't able to keep a server up and running for 
longer than 20-30 minutes without loosing the process containing the VM.

All of the JDK1.3.1 combinations basically worked at first glance and 
got tested; testing the system with both JMeter and manually under load, 
I could easily crash all setups using a sample page containing 15 
buttons with JavaScript rollovers which are all batik-generated; moving 
the mouse over the buttons in IE 5 when the buttons and their rollovers 
have not been completely loaded was a sure killer for any setup ! Tomcat 
3.3b1 made the most stable impression (it survived several "rollover 
mouse whooshes") and still had quite good performance results compared 
to the others, but a classloader bug which got discussed some time ago 
(confirmed by Berin in one posting, IIRC) prevents changes in XSPs 
without restarting the servlet container; quite a showstopper when 
developing applications.

In combination with JDK1.4, Tomcat 4.0b6 was the only servlet container 
which I got starting at all; sadly, all SVG2JPG output via batik was 
blank, and as this is a major requirement for me, I did no further 
testing here, but the basic stuff leaving out critical JDK1.4 issues 
like JDBC 3.0 database access and the like worked until it died like the 
rest. All other servlet containers failed in combination with JDK1.4 due 
to Cocoon complaining on missing lexical handler support of the crimson 
XML parser, although I haven't got the slightest idea how this error 
could result as I removed all other parser.jars, jaxp.jars and the like, 
put xerces in the relevant lib directory and even updated the tools.jar 
in cocoon/WEB-INF/lib to the one provided with the JDK1.4; changing the 
JDK back to 1.3.1 and changing back the tools.jar made this particularly 
irritating problem disappear.

Tomorrow (ouch... ok, today) I will try putting a servlet container 
behind either IIS or Apache; I currently hope that what I assume as VM 
crashes results in problems with the native networking code in both JDKs 
when it comes to rapidly opened/closed connections or the like, which 
might be prevented when putting something rock-solid in front. Another 
hope is that playing around with -Xmx and similar options provides a 
reliable solution which I *badly* need.

Best regards,

Michael


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to