-
Enhancement
-
Resolution: Won't Do
-
Major
-
None
-
JBossAS-5.1.0.GA
-
None
We ported an existing business application from Tomcat 5.5.x to JBoss AS 5.1.0.GA.
When running the application on JBoss AS, we found that the processing of a POST request with a large number of parameters takes longer than doing it on Tomcat.
We investigated the cause, it occurred in the processing of org.apache.tomcat.util.http.Parameters class in JBossAS/JBossWeb.
So, we've created a patch for JBoss AS to improve it.
We applied this patch to JBoss AS, then the processing time of 10,000 parameters in a POST request is now as follows.
- Time of processing request.getParameterMap().
Before:
22,635.0 msec (average of 3 times)
After:
2.3 msec (average of 3 times)
We want to incorporate this patch in JBoss AS.
Using our sample application:
1. Build
$ cd /tmp
$ unzip sample-app.zip
$ cd sample-app
$ mvn package
2. Deploy
Please copy the test_war-1.0.war to your deploy directory for your JBossAS.
$ cd blank_war/target/
$ cp test_war-1.0.war $JBOSS_HOME/server/<profile>/deploy
3. Test
Access the url - http://server:port/test_war-1.0/ via a web browser.
Press the "click" button in the page.
And, press "OK" button on a dialog.
The time of processing request.getParameters() is logged to CONSOLE and log/server.log.
ex)
13:42:43,084 FATAL [SampleTestAction] request.getParameterMap() taken 20467 msec.
About patch.
modified-5.1.0.GA.zip
- B2CConverter.java ... replacement of org.apache.tomcat.util.buf.B2BConverter
- Parameters.java ... replacement of org.apache.tomcat.util.http.Parameters
- LocalStrings.properties
... added a new property file to org.apache.tomcat.util.http.
Best regards,
Team.