[jboss-svn-commits] JBL Code SVN: r29607 - labs/jbossesb/workspace/performance/perf1/product/samples/quickstarts/performance.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Oct 14 07:41:48 EDT 2009


Author: beve
Date: 2009-10-14 07:41:48 -0400 (Wed, 14 Oct 2009)
New Revision: 29607

Added:
   labs/jbossesb/workspace/performance/perf1/product/samples/quickstarts/performance/README
Log:
Adding a modified version of the information provided by David.


Added: labs/jbossesb/workspace/performance/perf1/product/samples/quickstarts/performance/README
===================================================================
--- labs/jbossesb/workspace/performance/perf1/product/samples/quickstarts/performance/README	                        (rev 0)
+++ labs/jbossesb/workspace/performance/perf1/product/samples/quickstarts/performance/README	2009-10-14 11:41:48 UTC (rev 29607)
@@ -0,0 +1,49 @@
+'build.sh' has several editable variables at the top.  
+1. TESTS, which allows you to specify which jboss-esb_*.xml templates you want to build from
+2. MAX_THREADS, which allows you to specify the maxThreads properties
+3. SIZES, which allows you to specify hard-configured payload sizes (more on this later)
+4. HOST, which allows you to specify the host of the server running jbossesb (important for the proxying test cases).  
+
+If you run build.sh as is, you will end up with 170 distinct tests, found in the "tests" subfolder.
+What various combinations do those 170 different tests exercise?
+1) JBossRemoting, HttpGateway (4.6 version not 4.7) or EBWS front doors
+2) XsltAction or SmooksAction transformations (see transform_*)
+3) HttpRouter or SOAPProxy proxying
+4) TestAction that simply returns a hard-configured payload size response (see TestAction.java)
+- Various maxThreads/max-total-connections/max-connections-per-host settings
+
+Also in the tests subdir, you will find a performance.war file, which contains a simple HelloWorld webservice that is used for the proxying tests.  
+To deploy, simply copy performance.war into deploy/, then choose one of the performance_*.esb tests to copy into deploy/.
+
+SoapUI is used to generate the load.  
+The free 3.0.1 version will load up the included PerformanceTesting-soapui-project.xml file just fine. There is one annoying thing, though. Basically, that 
+xml file has fully-qualified paths and IP addresses in it, so you will need to search+replace in it and replace /home/rhuser/foo/bar/ and 192.168.1.103 with 
+your appropriate values first.
+
+To generate load, you will have to:
+1) Make sure your load test is hitting the proper endpoint (select the right Throughput Request, and edit the Endpoint property on the TestRequestProperties:
+- http://host:9090 (JBR)
+- http://host:8080/performance/Performance/Test (EBWS)
+- http://host:7070/Performance/Test/ (old HttpGateway)
+- http://host:8080/performance/TestWS (original JBossWS service in performance.war)
+2) Specify the desired number of client Threads (including Start and End Threads)
+3) Specify a duration Limit for the test.
+
+The various configuration changes that have been tested:
+1) Disabling SELinux.
+2) Using JDK 1.6 (had to copy a few jars into lib/endorsed) vs JDK 1.5
+3) Using non-clustered configuration
+4) Disabling (or cranking down) server logging (logging IO was a killer)
+5) Tweaking memory configuration
+JAVA_OPTS="-Xms1024m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m -Djava.awt.headless=true  -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.lang.ClassLoader.allowArraySyntax=true"
+6) Removing jbpm.esb
+7) Switch from Hypersonic to PostgreSQL
+http://www.jboss.org/community/wiki/JBossESBSwitchDatabase
+8) Changing the deployment scanner to hardly ever run
+9) Make sure the CachingRegistryInterceptor was enabled
+deploy/jbossesb.sar/jbossesb-properties.xml
+<property name="org.jboss.soa.esb.registry.interceptors" value="org.jboss.internal.soa.esb.services.registry.InVMRegistryInterceptor, org.jboss.internal.soa.esb.services.registry.CachingRegistryInterceptor"/>
+10) pure-java Tomcat or embedding the Apache Portable Runtime (JBoss Native APR in JBoss Web)
+
+I also turned off all log4j logging in the SoapUI client (bin/soapui-log4j.xml).  This was a huge performance test killer too!! 
+



More information about the jboss-svn-commits mailing list