You are on page 1of 46
IBM Integration Bus (IIB) Performance Testing Techniques Paul Faulkner ( ) Certified IT Specialist March 29" 2016 o TES eret Agenda - Part: - Why Performance Test - When to Test - Testing Strategies ~ Part 2: - Tools - Part 3: - Example Use Cases TES eret Why Performance Test = Determine resource usage of application based on planned production load = Determine if application has linear scalability » This will help with predicting future resource requirements » Identify application issues under load » DB connection issues » Memory consumption under load » Bottlenecks When to test » Prior to deploying to production: » All new applications prior to deploying into production » Major application changes » Design changes to applications which utilize new nodes, Databases, etc. TES eret Testing Strategies = Unit tests or Prototypes = Isolation » End to End TES eret Tools = Load tools » IBM and external tools * Monitoring and Analysis » Accounting and Statistics » Resource Statistics » Operating System » MQ statistics and tools TES eret IBM Perform Harness = Tool comes with documentation = Java™ based tool run from command line (there is no GUI) = Parameter base Common Parameters sl- sleep time in milliseconds between sending each message nt - Number of WorkerThreads 1 Run length in seconds. Setting this to 0 will disable the timer and run forever. rt- Desired rate (operations/sec). If this rate is greater than the maximum achievable, the behaviour is such that it runs as fast as possible. A value of 0 means to always run as fast as possible. mg - Fixed number of iterations to run. The default setting of 0 means there is no limit. Java based tool run from command line (there is no GUI) Parameter based \system32\ct ery erry err rey rr EE eer) Te er) ed Tet ret 8 7 IIB WebUI = Administrate Workload Management Policies ~ BaKi0 > Bsenves © ~ fi Operational Potey 1: Configurable Senices © IIB WebUI = Apply policy to dynamically change number of instances “8 ProductDetailsStub - Message Flow @Ovenew —[Sutstes # Operaonal Petey stares = Node Poles IIB WebUI = Enable Accounting and Statistics Flow analysis IIB WebUI = Enable Resource Statistics = ener et Downer — foReoucesutwies — fuSanses Resource analysis jymttene 8) TES eret Accounting and Stats Accounting and Statistics captures performance metrics for applications, flows, and nodes. Can be used to: -Identify bottlenecks -View performance of a particular node -View overall performance of a flow Enable stats from WebUI or command line: masichangeflowstats -s -g -j -n advanced -t basic -b basic -c active -o xml Accounting and Stats - ‘WebUl TES eret Accounting and Stats — ISO3 Support Pack [om wat ied us altaya |S RT [atop Tine ot icins ——Toetpetine Tel Une Avenged ne erm. twain b 6 [4:25:58.205002 4 173 ba Laas D 0 a asians 0 a 7 D)- SG; TES eret Resource Stats Resource stats can be used to view resource metrics of the system for an Integration Server Can be used to: -Identify potential issues for resource use across an Integration Server. Enable stats from WebUI or command line: masichangeresourcestats -e -c active = Resource Stats - WebUI ave, JDBC™, JMS™ TES eret Example Use Cases TES eret Example Test Case — Unit Testing Test Case - Compare performance of multiple transformation strategies using ESQL and Graphical Data Map for same transformation Show use of: - PerformHarness tool - Accounting & Stats (with IS03) a): 5 Example Test Case — Unit Testing First a look at the scenario : -Simple flow which converts a large CSV input Kn ———ak message into an ordered XML structure TeSTPEREOUT Uses 2 different ESQL coding practices and1 J@ tl GDM “ar -Output is identical in all cases ‘\—eutcoupuomancom \i} Diese TES eret Example Test Case — Unit Testing — Pe “eam 1 erent 1 amen 2a 8 emens 8,75,5,4,5,308 1 semen? 10,358, 760508032201 ie sement fe sensed 1 Semenaet0 1s Senge0 Seamed fs Suchet fs Sched | estar elmer ‘seemens Selmer Seemens leemen TES eret Example Test Case — Unit Testing Code snippet from BuildOutputXML compute node ate Lastove(rinsep) Do —~iah te outa conor SEr toto SEF autor se Aegnt.seroturleerucieian| sleet? : 2 a SE putons st tennre seroeueloeruc see. elenene> SEF Spates se Aeqnt.ervsuretesraciian|clenret Devoe stro? SE tutor suse emer. seroturelesruc@iae. elements SEF Spates se eqns eresuretefsracieson| clement cn, al SEF exhutnort muse Acqest.strecturetelstecaoiod el =——_ at, SEr otontont Se ement. SeroctiettrvelOsoe oenaneco SEF Oaqutnont se Aeqett. strcturtesructiae) el SEF Suton lst ennetstrvoielelstuebsen.elenne0'= inten retneype. els “ee SET struct = struceldx + 35 SEr utpttor se tense strvtuetlstrueid cent + ron recone Eels SET Outputtoot HUIS Request Structured strucbide] element® = rintep-recordlype?. ell YONE rlnkep MEXTSTBLIMG, fo wees TES eret Example Test Case — Unit Testing Code snippet from BuildOutputXMLFast compute node Kon it Ser ouput use east = steer Sieiertype sonnet tthe) Ie cn es a p.recordTypel.field2 AS elenent2, ‘Intep.recordiypel field) AS element, {=} ‘ak ‘Tnkep.recordtypelflelge AS elenent, estou ae. recor dpe fel AS elem sutsormsoncon ineprecordypel elele AS elenrei0 Ron Inputoot DFO -RejuestBessage.repesting(] AS rinRep WERE rIaRep.recondTypel.field1 = 18) AS Structurelo(), euect roy tnpticat OC Reiuestessoge ing] AS rInkep WHERE rioRep.recondiype2. eld = 8) AS Structores(] FROM Toputhoot OF RequestRessage.header AS rineader); TES eret Example Test Case — Unit Testing Graphical Data Map E won Buladoacou “Mconewy Madoc SS) HR X ER BEV BESAR oo mange any ao “Pcixtomer» “> ciatomer> 10.2} PropertesType “aMove ~ = # Properties 10.1} PropertesType a1 ona 2itenat—fht tronme {ial aoe + one ‘nat sine fue ee ces tel + Raisnenset eA ston 11am {13} ome a vemeae4 2 a i eveing te epg a Kane ol le 2 -ab STRa/n anaes sro? TES eret Example Test Case — Unit Testing |.Deploy flow 2.Enabled Accounting and Stats collection masichangeflowstats -s -g -j -n advanced -t basic -b basic -c active -o xml 3.Start load test java JMSPerfHamess -tc majava.Sender -d TEST.PERF.IN -jb BK10 -jh localhost je SYSTEM.BKR.CONFIG -jp 2222 -mf C:\IBMWork\TestMessages\Testin1.txt -ss 5 -nt 1 rl 300 -rt 150 4. Using S03 or WebUI review metrics collected per node Tce Example Test Case — Unit Testing ISO3 Graphical ee TES eret Example Test Case — Unit Testing 1S03 Tabular View #) eaoupa ‘uldOutputxMLFast | TEST.PERF.OUT2 | BuldOutputXML.GDM | TEST.PERF.OUT3 | Discardérrors| Total CPU time ‘Average elapsed time per m..._ Average CPU time per mess ies79107 7868 917 [2820263 17758 3938 2964464 7754 2) sasepnit ree | BuildOutpub

You might also like