Home

ACS Performance Test

image

Contents

1. ge tLogger debug name 4 context getParameter name J Generate a String identifier of this test for debugging purposes return a String identifier for this test instance a7 private String whoAmI StringBuffer sb new StringBuffer sb append Thread currentThread toString sb append sb append Integer toHexString hashCode return sb toString Text in bold should be replaced by your code The emphasised code could just as well be left out because it is there for jMeter logging purposes only In order to make use of this logging you should adjust jMeter s jmeter properties file to have log_level jmeter protocol java sampler set to DEBUG mode and everything will get logged into file defined by log_file jmeter variable You may also add your own test parameters by optionally defining them in getDefaultParameters method and using them the same way we use ThreadNum parameter See Apache JMeter API Specification 1 for more details on how you may retrieve different types of parameters from JavaSamplerContext If you merge more different tests into one java sampler client class you should have each identify itself through m_testName variable as in T21Sampler java Compiled classes jar files then need to be placed in jMeter s lib ext directory 8 2 Creating jMeter test plan You may add your test to existent acstests jmx document or you can create a new plan Opening
2. e Until the constantly intensive system s situation is not stabilized we are getting shorter response times for a single operation than the average response time actually is because at the beginning the request queue is empty The larger sets we take the more stabilized situation we measure To get the actual average response times we should take infinitely large sets The biggest deviation of measured time from the actual average response time will happen in case of an unstable system an overwhelmed open servicing system In that case we will always measure a finite response time although it should be infinite This conclusion might help us find whether a given system is unstable just by measuring averages for more different sized sets If K is the size of a set function avg_time K should with K gt inf approach toward some constant in case of a stable system and should grow to infinity in case of an unstable system Number of clients threads times machines e Increases the intensity of requests coming to server Increase of intensity will have bad impact on response time Too high intensity will in case of asynchronous operations make server become unstable Delay between two sequent requests for each client e Decreases the intensity of requests coming to server 6 Results Please see acstests sxc 7 Conclusions Please see acstests sxc and AcsPerformance pdf 7 1 Possible extensions of the tests Let me just repeat
3. Perform a single sample Perform a single sample for each iteration This method returns a lt code gt SampleResult lt code gt object lt code gt SampleResult lt code gt has many fields which can be used At a minimum the test should use lt code gt SampleResult setTime lt code gt to set the time that the test required to execute It is also a good idea to set the sampleLabel and the successful flag param context the context to run with This provides access to initialization parameters return a SampleResult giving the results of this sample public SampleResult runTest JavaSamplerContext context SampleResult results new SampleResult try long time System currentTimeMillis PERFORM TESTING OPERATION S HERE results setTime System currentTimeMillis time results setSuccessful true results setSampleLabel m_testName m_instancelID if orb null orb destroy catch Exception e results setSuccessful false results setResponseCode e getMessage results setSampleLabel ERROR e getMessage getLogger error this getClass getName Error during sample e if getLogger isDebugEnabled getLogger debug whoAmI trunTest tTime t results getTime listParameters context return results Do any clean up required by this test
4. one jmx document in jMeter does not close what is already open but rather only appends the plan to the open one When adding to acstests jmx try to keep the consistncy with the rest of the plan One of the important things is also having all the tests take similar amount of time to execute These execution times should be correalated with TESTS_SIZE parameter of the test plan wherever possible For tests that will be performed by more threads or even machines concurrently you should first have them synchronized with one distsync sampler client object That being said lets now see how these things are put in jMeter e To append a new element as a child of selected one either right click the selected one and choose or select EN E from the menu e Samplers elements that perform one specific test e g implemented as jMeter sampler client class can only be appended to Thread Group or one of the Logic Controller elements Named elements control the flow of the test plan looping e To add a jMeter sampler client object as a sampler you should do E E and then select the Classname of the added element to match your test s classname your test s jar file must of course be located in jMeter s lib ext directory jMeter s classpath Be sure to adjust your test s parameters e To add distsync sampler you should do EO MED FA and then as Classpath select com cosylab distsync JMeterSampler Parties parameter must match the number of client
5. param context the context to run with This provides access to initialization parameters xj public void teardownTest JavaSamplerContext context NOTE This function is only called once for one thread getLogger debug whoAmI tteardownTest listParameters context Provide a list of parameters which this test supports Any parameter names and associated values returned by this method will appear in the GUI by default so the user doesn t have to remember th xact names The user can add other parameters which are not listed here If this method returns null then no parameters will be listed If the value for some parameter is null then that parameter will be listed in the GUI with an empty value return a specification of the parameters used by this E test which should be listed in the GUI or null if no parameters should be listed public Arguments getDefaultParameters Arguments params new Arguments params addArgument ThreadNum S __threadNum return params J Dump a list of the parameters in this context to the debug log param context the context which contains the initialization private void listParameters JavaSamplerContext context parameters if getLogger isDebugEnabled Iterator argsIt context getParameterNamesIterator while argsIt hasNext String name String argsIt next
6. ACS Performance Test User s Documentation Document Owner Anze Zagar Status Draft Availability eso doc DOC ACS_Performance_Test xml Creation 2004 03 12 Anze Zagar Last Modification 2004 08 13 Steve Harrington Copyright 2004 by Cosylab d o o All Rights Reserved Scope This document gives instructions on how to execute and extend the performance test suite Also it gives a report on the results of some of these ACS stress and performance tests which were performed at CosyLab Audience Anyone interested in ACS performance testing in particular ACS developers and prospective users Table of Contents 1 Introduction 1 1 Testing Computers 2 Tests 2 1 Notes 3 Preparation of tests 3 1 ACS componenis devices 3 2 Pereparation of CDB 3 3 ComponeniClients 3 4 jMeter clients 3 5 Preparation of jMeter test plan 3 6 DistSync 4 Installing and Running the tests 5 Expectations 5 1 Scalabilit 5 2 Effects of different parameters 6 Results 7 Conclusions 7 1 Possible extensions of the tests 8 How to extend tests 8 1 Creating jMeter sampler client class 8 2 Creating jMeter test plan References Document History How to Read this Document This document s meta information authors revision history table of contents can be found above What follows below is the body of the document The body is composed of several sections which may be further composed of s
7. ER_REFERENCE to point to the computer on which you have ACS running You will also need to set DISTSYNC_SERVER to point to the computer on which you ran the distsync server script You will need to set REMOTE_COUNT to the number of clients in your test You may also optionally modify the THREADS_COUNT TESTS_SIZE and LOOP_COUNT variables Optionally add modify listeners and possibly select output file See JMeter documentation for more details on this process Start the tests from JMeter GUI application e g from the menu choose Run gt Remote Start All Observe the status of the running tests by expanding the tree on the left in the GUI ACS Stress Tests gt All Tests then selecting the View Results in Table node You should see output from the running tests indicating success or any error messages Additional precautions and notes e Be sure to have MANAGER DISTSYNC_SERVER and REMOTE_COUNT parameters of jMeter test plan adjusted properly e When changing number of involved clients machines times threads you must also restart distsync server e distsync server should also be restarted when test plan is not completed entirely e When restarting distsync server and or jmeter server you may in some cases have to kill rmiregistry process es by killall rmiregistry or stop rmiregistry script 5 Expectations 5 1 Scalability Scalability is more the question of asynchronous operations because there we are dealing with so called
8. T17 19 42 605 7528 81926 EXCEPTION CORBA exception caught user exception ID IDL omg org PortableServer POA ObjectAlreadyActive 1 0 2004 03 06T17 19 42 606 Failed to activate CORBA object SBCOO property_monitor0o alma ACS 3 1 ACSSW bin acsStartContainer line 156 7528 Killed maciContainer SCOMMANDLINE e Tests 2 3 1 and 2 3 3 were only performed in singlethreaded mode for no particular reason did not have the time e Tests 2 4 were not performed at all did not have the time e All multithreaded tests were only performed on N M 1 1 2 1 4 1 8 1 1 2 2 2 4 2 where N is the number of threads and M is the number of computers 3 Preparation of tests 3 1 ACS components devices had to create three components SimpleBACIComponent C BACI e 1 RWlong property with 13 default characteristics e 1 asyncronous action e 1 characteristic ComplexBACIComponent C BACI e 16 RWlong properties with 13 default 51 additional characteristics e 16 asyncronous actions e 64 characteristics LogErrTestComponent C e synchronous method to generate specified amount of logs on container e synchronous method to raise Exception with stack of given level also created two simple non BACI components one in C and one in Java for experimenting leared everything from acsexmplHelloWorld acsexamplPowerSupply BACI_Device_Server_Programming_Tutorial doc and jcontexmpl s HelloDe
9. ZE parameter Test plan can be further adjusted through some parameters e MANAGER corbaloc of the manager e DISTSYNC_SERVER location of DistSync server e REMOTE_COUNT number of computers that will be running the tests e THREADS COUNT number of threads per computer that will be running the tests e TESTS SIZE allows adjusting the size of tests 3 6 DistSync Because in case of more clients number of clients equals threads times machines we want all clients to perform each test simultaneously starting together and waiting for the others until they are all done so that they will all simultaneously proceed with the next test we have to be synchronizing them before each test To do this Klemen created distsync client for jMeter that connects to distsync server run as a service in another process or even on a remote computer and waits to be notified when all the other clients get connected This is how it works more clients are running our jMeter test plan and at some point they all come to one most commonly the same distsync sampler client element in the plan This element will connect them to the distsync server which will then delay each client until the number of all connected clients with matching CyclicBarrierName parameter does not equal the number of parties Parties is another parameter of distsync sampler client element and must be the same for all clients The third parameter of distsync sampler client is RemoteConcu
10. d in runTest method because setupTest is only called the first time jMeter plan encounters this test Test parameters are contained in context parameter of this method see Apache JMeter API Specification 1 on JavaSamplerContext public SampleResult runTest JavaSamplerContext context jMeter executes this method every time it needs to perform the test It expects some attributes of returning SampleResults to be defined in here e g setTime setSuccessful setSampleLabel and possibly others see Apache JMeter API Specification 1 on SampleResult for more This method should perform a single sample operation or a set of operations for each iteration in jMeter s test plan and measure the time required for it to perform public void teardownTest JavaSamplerContext context Do any clean up required by this test here This method is called for all initialized sampler client objects involved in the testing after the whole test plan completes public Arguments getDefaultParameters Provide a list of parameters which this test supports Any parameter names and associated values returned by this method will appear in the GUI by default so the user does not have to remember the exact names The user can add other parameters which are not listed here If this method returns null then no parameters will be listed If the value for some parameter is null then that parameter will be listed in the GUI with an empty value To keep consistency
11. ing Computers Computer Processor Memory Other Information e ACS Server ACS 3 1 pre Intel Celeron enone i 768MB Fedora Core 1 e J2RE SE Thor 192 168 1 4 1 8GHz 128kB or 138169 aie RAM kernel 2 6 2 1 4 2 03 b02 e Running in text mode e Primary client j e J2RE SE Intel Pentium 4 Saanti are Odin 192 168 1 5 2 5GHz 512kB 1GB RAM eens re _ Mew cache kernel 2 6 3 e Running in X ICEWM e Secondary Client e J2RE SE 1 4 2_02 AMD AMON 768MB _ Debian Linux e C a ra Heimdall 192 168 1 1 850MHz 256kB ontrore RAM kernel 2 4 22 remotely via cache SSH e Home server routher firewall During testing there was also another Windows 98 computer connected to the network 2 Tests The following tests are implemented 1 Startup tests CORBA initialization 1 l 2 TEST_1_1_1 Server analyze acsStart logs TEST_1_1_2 Client do ComponentClient initCorba 2 Device activation on server startup l TEST_1_2_1 Export activate N 1 2 4 8 16 simple devices prepare CDB and analyze acsStartContainer logs TEST_1_2_2 Export activate N 1 2 4 8 16 complex devices prepare CDB and analyze acsStartContainer logs TEST_1_2_3 Stop container with N 1 2 4 8 16 simple devices activated analyze acsStartContainer logs TEST_1_2_4 Stop container with N 1 2 4 8 16 complex devices activated analyze acsStartContainer logs 3 Device activation from client 1 TEST_1_3_1 Connect to N 1 2 4 8 16
12. its name in this case one of 1_1 1_2 2 1 2 2 3 1 3 2 e T23Sampler performs 2 3 tests and takes parameters o ThreadNum identifier of the thread to be used in sample s label e g __ threadNum o SizeOfSet Size of the set for 2 3 1 not used z for 2 3 2 number of monitor s callbacks to wait for until ending the test for 2 3 3 number of monitors to create together in one test o Delay only for 2 3 2 and provides the time of monitor callback timer in 100ns TEST_2_ 3_ Identifies which test we want to perform the remaining part of its name in this case one of 1 2 3 e 724Sampler performs 2 4 and 2 5 tests and takes parameters o ThreadNum identifier of the thread to be used in sample s label e g __threadNum o LogCount for 2 4 only and provides the number of logs to be generated LogSize for 2 4 only and provides the size of each log o Errorlterations for 2 5 only and provides the number of levels of expection stack o TEST_2_ Identifies which test we want to perform the remaining part of its name in this case one of 4_1 4_2 5 e T26Sampler performs 2 6 test and takes parameters o ThreadNum identifier of the thread to be used in sample s label e g __ threadNum o SizeOfSet Size of the set number of COB retrievals to be made together in one test 3 5 Preparation of jMeter test plan All tests were added to the plan and their parameters chosen wisely correlated with TESTS_SI
13. ll of the computers which will be clients in your test e g if you want to run a distributed test with multiple clients you must do this on all of the client computers 6 Set your ACS_CDB environment variable to point to the test CDB location e g export ACS_CDB PATH TO ACS Benchmark Components Performance config where you substitute the actual path on your system for PATH TO 7 Start ACS e g acsStart 10 11 12 13 14 15 16 17 18 Start the C container named bilboContainer e g acsStartContainer cpp bilboContainer Optionally you may wish to bring up object explorer to verify that you see the test components e g objexp followed by browsing the components in the GUI but this is merely an optional verification step that is not required Configure JMeter s jmeter properties file Edit this file and modify the remote_hosts setting to contain a comma separated list of the IP addresses of each client computer in your distributed test e g remote_hosts 146 88 1 156 146 88 1 59 where you would use the IP addresses of your client computers in place of the 146 xxx xx xx numbers You may also optionally modify the log_level setting for Jmeter NOTE you only need to modify the jmeter properties file on the computer which will run the JMeter GUI application to kick off all the tests you do not need to modify the jmeter properties file on all of the client computers in your test environment Run the di
14. mo 3 2 Pereparation of CDB These components crash container if their CDB configuration files are invalid or do not exist also have not found any good documentation on how to create schemas xmls and there was nothing not even a sample on how to define device and property characteristics For example from where was to know that sequence element must come in front of attribute elements of complexType 3 3 ComponentClients created two clients e BCTClient that performs all the tests that require SimpleBACIComponent and ComplexBACIComponent e LECTClient that performs all the logging and error handling tests 2 4 At first extended all my clients from ComponentClient class as in HelloDemoClient of jcontexmpl causing that each test had to individually initialize Corba and connect to manager as also do its own finalization and disconnection This led to some difficulties after exactly fifth test client did its tearDown any further communication with manager was disabled until either process running the tests clients e g Eclipse or jMeter or Manager was restarted After discussion with Klemen we created singleton pattern for ComponentClient All ComponeniClient initialization and finalization was after then done only once per lifecycle of the entire set of tests 3 4 jMeter clients jMeter clients need to implement JavaSamplerClient interface created the following e CCSampler only used for initializatio
15. n and finalization of singleton ComponentClient object This should be done at the beginning and at the end of the entire test plan e 7112Sampler performs 1 1 2 test and takes parameters O ThreadNum identifier of the thread to be used in sample s label e g __ threadNum e 713Sampler performs 1 3 tests and takes parameters O ThreadNum identifier of the thread to be used in sample s label e g _threadNum NoOfDevices Number of COB devices 1 16 needed to be activated deactivate e g 1 2 4 8 16 TEST_1_3_ Identifies which test we want to perform the remaining part of its name in this case one of 1 2 3 4 e 721Sampler performs 2 1 tests and takes parameters O ThreadNum identifier of the thread to be used in sample s label e g _threadNum SizeOfSet Size of the set number of operations to be made together in one test TEST_2_1_ Identifies which test we want to perform the remaining part of its name in this case one of 1 2 3 4 5 e 7JT22Sampler performs 2 2 tests and takes parameters O ThreadNum identifier of the thread to be used in sample s label e g _threadNum SizeOfSet Size of the set number of operations to be made together in one test Delay Delay time between sending two sequent requests in the set in milliseconds maybe this should be extended to nanoseconds o TEST_2 2_ Identifies which test we want to perform the remaining part of
16. open servicing system requests may be coming faster than being serviced Until we are servicing fast enough average response time of one operation should remain more or less constant thereafter average response time will instantly raise to infinity gt SYSTEM UNSTABLE Synchronous operations on the other hand are closed interactive servicing system that is much more stable The amount of requests is dependant on the number of clients If all the clients are waiting to be serviced no new request can be generated For as long as waiting queue is empty we are servicing requests clients faster as they return in average we will have constant response times After that limit is broken response time will increase lineary with the number of clients Response time is the time from the moment we send the request to the moment we receive the response It of course depends on the queue size fullness and the servicing time time for servicing the request With our 2 2 tests we calculate average servicing time It might also be interesting to find the average response time by remembering the time of making each request e g by sending it as request id and subtracting it from the time of response in the callback object and then finding the average of these time differences 5 2 Effects of different parameters Size of sets e Incase of very fast operations we want to perform more a set of them together to get more accurate results
17. rrentFactory that specifies the location of distsync server e g localhost RemoteConcurrentFactory For distsync to work with jMeter you must have a copy of distsync s jar in jMeter s lib ext directory 4 Installing and Running the tests Procedure 1 Install the JMeter application NOTE every computer which will function as a test client must have JMeter installed if you want to run a distributed test i e a test using more than one client each computer must have a JMeter installation in order to to run the jmeter server application The JMeter server application is required to enable JMeter to communicate with and remotely start the tests on the client computer 2 Set the JMETERROOT environment variable e g export JMETERROOT PATH TO JMETER INSTALLATION where you substitute the actual path on your system for PATH TO JMETER INSTALLATION 3 Source the ACS environment e g bash_profile acs NOTE this step assumes that you have an existing ACS installation if not you must install ACS Retrieve the ACS source from CVS if you haven t already e g cvs export ACS 5 Build and deploy the tests by executing the ACS Benchmark JMeter build script NOTE this does a make clean man all install in the ACS Benchmark Components Performance src directory and also does some additional deployment configuration that is necessary for JMeter to run the tests You must run this script or manually replicate what it does on a
18. s i e number of computers times number of threads per computer Do not forget to adjust RemoteConcurrentFactory parameter to match location of the DistSync server more about this has been said in DistSync 3 6 e For more on how to use jMeter please refer to Apache JMeter User s Manual 2 Document History Revision Pate Author fection Mosification 2004 03 1 0 10 Anze Zagar all Created 2004 03 oe Klemen Zagar all 21 08 ifi fl 14 2004 08 iota TERE OER all Gl nned and updated to re ect 13 S ESEE inclusion in ACS build environment References ID author Reference Revision Date Publisher 1 Apache Apache JMeter API Specification 1 9 2003 Apache 2 Apache Apache JMeter User s Manual 2003 Apache 3 Apache Apache JMeter 1 9 2003 Apache
19. simple not yet activated devices do getComponent for each TEST_1_3 2 Connect to N 1 2 4 8 16 complex not yet activated devices do getComponent for each TEST_1_3_3 Time for client to release all N 1 2 4 8 16 simple devices do releaseComponent for each TEST_1_3 4 Time for client to release all N 1 2 4 8 16 complex devices do releaseComponent for each 2 Throughput tests measuring operations per second 1 time of one operation Synchronous operations N 1 2 4 8 16 clients distrubited on M 1 2 4 1 machines 1 TEST_2_1 1 getProperty 2 TEST_2 1 2 setProperty 3 TEST_2_1 3 Device getCharacteristic 4 TEST_2_1_ 4 Property getCharacteristic 5 TEST 2 1 5 action Asynchronous operations N 1 2 4 8 16 clients distrubited on M 1 2 4 machines callbacks are empty 1 Dien he 6 TEST _2 2 1 1 getProperty only send requests TEST 2 2 1 2 getProperty wait until requests are answered TEST 2 2 2 1 setProperty only send requests TEST 2 2 2 2 setProperty wait until requests are answered TEST 2 2 3 1 action only send requests TEST 2 2 3 2 action wait until requests are answered Monitor tests N 1 2 4 8 16 clients distrubited on M 1 2 4 machines callbacks are empty 2 1 Notes 1 TEST_2_3_1 Monitor timer exactness callbacks should be generated once per second and the exact time between two is measured 2 TEST_2 3 2 Callback thro
20. some that were already mentioned in previous chapters e Completing unperformed tests e Measuring response time of each operation Scalability 5 1 e Performing scalability tests also with lower incoming request intensities by using delay parameter of asynchronous operations tests T22Sampler in jMeter clients 3 4 If milliseconds are too much BCTClient and T22Sampler should be modified to take nanoseconds instead 8 How to extend tests If you want to add another measurement to the test plan here is a note on what needs to be done From here will presume you already have Java code that performs the operation or a set of operation if one takes too little time to perform First you must create a jMeter class that extends org apache jmeter protocol java sampler AbstractJavaSamplerClient Then this class should be inserted and adjusted properly to fit into the jMeter s plan 8 1 Creating jMeter sampler client class Implementing org apache jmeter protocol java sampler AbstractJavaSamplerClient class means to implement the following methods public void setupTest JavaSamplerContext context Should do any initialization required by the client It is generally recommended to do any initialization such as getting fixed parameter values here rather than in the runTest method in order to add as little overhead as possible to the test Parameters that vary during the execution of the test plan should however be handle
21. stsync server on a single computer JMETERROOT bin distsync server 146 88 1 156 where you substitute the IP address of your machine in place of 146 88 1 156 NOTE do not use 127 0 0 1 here Also you must run this prior to running jmeter server see the next step due to the way the scripts are implemented to share the rmi registry This script starts the rmi registry in addition to starting the distsync server The script will fail if the rmi registry is already executing which occurs when you run jmeter server first Don t do that The distsync server is an application which allows the behavior of multiple computers to be synchronized during the tests Start the JMeter server application JMETERROOT bin jmeter server on each client computer in your test environment NOTE if you are running the tests only on a single machine from within the JMeter GUI application this step is not strictly necessary However for a distributed test it is mandatory to run this on each of the client computers in the test environment in order for JMeter to properly communicate with each of the test clients Start the JMeter GUI application by running the JMETERROOT bin jmeter script Load the test plan file by choosing File gt Open and browsing to the file ACS Benchmark JMeter acsperftest jmx and selecting it in the file chooser dialog Modify test parameters as necessary and optionally disable enable specific parts of the test plan You will need to set MANAG
22. ubsections Typographical styles are used to denote entities of different kinds For a full list of entities and their respective typographic conventions please refer to the Styles section of the XML Documentation document When viewing the document in a non printed form it is possible to submit comments regarding a given section to the document s owner This is achieved by clicking the mail icon next to the section title For this to work your mail must be configured to properly handle the mailto URLs 1 Introduction The ACS performance evaluation suite consists of the following kinds of tests 1 Startup tests gathering data on the startup time of individual components 2 Throughput tests finding the throughput of individual operations 3 Scalability tests determining the limits where the server can still keep up with the client requests and remain stable To facilitate multiple client stress testing Apache JMeter application 3 was used JMeter allows for creating automatically executable test plans Additional ACS specific plug ins for JMeter were developed The tests were performed on a simple home environment and involved three Linux desktops one of which was used as a standalone ACS server runnig only jmanager and one C container All components used for these tests were bulit in C whereas clients were all Java made Analysis of the data collected by jMeter was later made manually in OpenOffice org Calc 1 1 Test
23. ughput set monitors to generate callbacks as fast as posible 3 TEST_2_3 3 Time for client to create a monitor for one property create_monitor Logging service performance without IO console output 1 TEST_2_4 1 Server logging call synhronous action on server component to generate N 1 2 4 8 16 M 100 1k 10k 100k byte logs 2 TEST_2 4 2 Client logging have client generate N 1 2 4 8 16 M 100 1k 10k 100k byte logs TEST_2_5 Error handling performance on server have synchronous action on component call some recursive function which will in its N 1 2 4 8 16 th iteration raise an ACSErr exception TEST_2 6 Retrieval of COB reference N 1 2 4 8 16 clients distributed on M 1 2 4 machines should be constantly T gt Inf requesting the reference of already activated device e Often a single operation is too fast to be exactly measurable i e takes a very short hardly measurable time to preform Therefore we rather measure a whole set of e g 100 operations This applies to 2 1 2 2 2 3 2 2 3 3 2 4 2 5 2 6 tests The larger set we take the better reslults we will get e Tests 1 3 proved out to be causing a major memory leak on Container and had to be performed sepearately e Test 2 3 2 was only run in singlethreaded mode because with more threads probably some kind of sharing violation it was crashing Container with the following output 2004 03 06T17 19 42 605 Failed to activate CORBA object 2004 03 06
24. with other already created sampler client classes you should start from the following template package com cosylab acs test sampler import java util Iterator import org apache jmeter config Arguments import org apache jmeter samplers SampleResult import org apache jmeter protocol java sampler AbstractJavaSamplerClient import org apache jmeter protocol java sampler JavaSamplerContext DESCRIPTION OF YOUR CLASS public class TMySampler extends AbstractJavaSamplerClient private static final String TEST_PREFIX TEST_ID private String m_testName m_instancelID Do any initialization required by this client It is generally recommended to do any initialization such as getting parameter values in the setupTest method rather than the runTest method in order to add as little overhead as possible to the test param context the context to run with This provides access es to initialization parameters wv public void setupTest JavaSamplerContext context NOTE This function is only called once for one thread getLogger debug whoAmI tsetupTest listParameters context long tn context getLongParameter ThreadNum 0 m_testName TEST_PREFIX try String str java net InetAddress getLocalHost getHostName m_instanceID str catch Exception e m_instanceID tn

Download Pdf Manuals

image

Related Search

Related Contents

detalles técnicos  Progress Lighting P2810-15WB Installation Guide  Bedienungsanleitung-cz-75    PG-FP5 Flash Memory Programmer Setup Manual  Related Documents  PLANO SPOT - user manual  Bedienungsanleitung Shima  dl-300e downloadable control communicator    

Copyright © All rights reserved.
Failed to retrieve file