anon-540205's picture
From anon-540205 rss RSS 

Enterprise JavaBeans™ (EJB™) Architecture Scalability/Load Test 

Enterprise JavaBeans™ (EJB™) Architecture Scalability/Load Test

 

 
 
Tags:  optimization software  software load testing software testing load test s 
Views:  28
Published:  December 31, 2011
 
0
download

Share plick with friends Share
save to favorite
Report Abuse Report Abuse
 
Related Plicks
360logica at a glance

360logica at a glance

From: anon-128836
Views: 526 Comments: 1
We are specialist Independent QA/Testing
consultancy company propelled by a team of bright, efficient & committed individuals, having acquired their professional acumen from the India's premier technological institutes and (more)

 
Rapid Software Testing by James Bach and Michael Bolton

Rapid Software Testing by James Bach and Michael Bolton

From: arclyny
Views: 109 Comments: 0
Rapid Software Testing by James Bach and Michael Bolton
 
Does your performance testing tool support correlation capabilities

Does your performance testing tool support correlation capabilities

From: alvinl
Views: 61 Comments: 0
Does your performance testing tool support correlation capabilities
 
CHOOSING A LOAD TESTING STRATEGY

CHOOSING A LOAD TESTING STRATEGY

From: acphertz
Views: 29 Comments: 0

 
Enterprise software challenges and significance of QA

Enterprise software challenges and significance of QA

From: ivesiatech
Views: 155 Comments: 0
How do we address these challenges using QA and ensure that the software functions well in real-world conditions?
Increased levels of integration in the software today means increased need for test capabilities. There will b (more)

 
See all 
 
More from this user
SocialIMPACTnow is Social IMPACT Social Media

SocialIMPACTnow is Social IMPACT Social Media

From: anon-540205
Views: 24
Comments: 0

 
See all 
 
 
 URL:          AddThis Social Bookmark Button
Embed Thin Player: (fits in most blogs)
Embed Full Player :
 
 

Name

Email (will NOT be shown to other users)

 

 
 
Comments: (watch)
 
 
Notes:
 
Slide 1: Enterprise JavaBeans™ (EJB™) Architecture Scalability/Load Test Ted Osborne tosborne@rswsoftware.com RSW Software, Inc. www.rswsoftware.com 1 BOF-1303, EJB™ Scalability/Load Test
Slide 2: Agenda • The Current Landscape: Performance Testing & EJBs • Example Case Study using EJB-test • Survey EJB Performance Test Strategies & Techniques 2 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 3: Performance Testing & EJBs : web client :Internet Presentation tier Middle tier Data tier : web server : web client : EJB server : database server : EJB : web client : client : EJB : client : client 3 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 4: Our "OrderEntry" Example WebLogic 5.1.0 : EJB server <<requests>> <<responses>> orderentry.jar : Session EJB customer.jar : Entity EJB Cloudscape : database server vendor.jar : Entity EJB product.jar : Entity EJB 4 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 5: EJB-test Strategy: 1. Create Java driver "client" for EJB under test • • • • • • • Goal: time method requests on EJB's interface (business methods) Automate code generation through Java Reflection API & EJB code patterns Run the client in multithreaded load generator Map in data from tables (or use generated data) Response times Exceptions Data: actual vs. expected 2. Simulate load using that client 3. Aggregate log data 5 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 6: Select the EJB to be tested from the Jars in your classpath 6 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 7: EJB-test automatically generates a Java Test Client specific to the selected EJB and optimized for WebLogic or WebSphere 7 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 8: The automatically generated Java Test Client times the method calls to the selected EJB 8 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 9: Define the load to execute and run the test. 9 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 10: Select the results to view 10 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 11: Select the response time data to view 11 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 12: Compare 2 test executions 12 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 13: OEVendor vs. OELoad • A simple response time comparison reveals which bean is the bottleneck • Potential sources of bottleneck: – Design – Deployment – Environment 13 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 14: Comparing EJB Deployments OEProduct ejb-jar.xml:37 <trans-attribute>Supports OEVendor ejb-jar.xml:37 <trans-attribute>Required weblogic-cmp-rdbms-jar.xml:29 <transaction-isolation>TRANSACTION_SERIALIZABLE 14 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 15: Strategies & Techniques • • • • • • Load Testing Data-driven Load Testing Multithreaded & Multi-JVM Loads Distributed Load Testing Scenario (Multi-bean) Testing Other Interesting EJB Tests 15 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 16: EJB Load Testing • Objective – Measure EJB's ability to server increasing number of client requests – Most Common Metrics • Transactions per Second (TPS)—throughput • Response time—client-side – Other Interesting Metrics • Error rate (exceptions) • Correctness (expected vs. actual values) • Method-level response times 16 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 17: Data-driven EJB Load Testing • Objective – Test EJBs with realistic data sets • Approach – Particular data combinations often comprise a "use-case" – Data set triggers business rules or call graphs of interest – Automation Leverage: Data from CSV "maps" into a static client driver • Hurdles – Marrying clients to data sets 17 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 18: EJB Load Testing System Topology : client host Middle tier Data tier B : test client Test client threads each time their calls to the EJB's methods B : client thread : EJB server : database server A : EJB B : EJB 18 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 19: Multithreaded & Multi-JVM Load Generation • Objective – Better simulation of load • Approach – Multithreaded load generation simulates a multi-client load (concurrent requests) – Dividing load across JVMs creates multiple socket connections to server • Hurdles – Thread safety & execution coordination 19 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 20: Distributed Load Testing • Objective – Generate a load simulation that is large enough • Approach – Distribute client JVMs across multiple machines • Hurdles – Still have thread safety and client coordination – Aggregating result logs – Client execution environment 20 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 21: Distributed Load Testing Nirvana Desktops : NT host : browser : EJB-test server EJB-test Servlet engine : Solaris host : browser SyncLoad ™ AutoGen™ code generator : client host : test test : : client test client client Client Hosts : client host : test test : : client test client client EJB Servers : EJB server : EJB : EJB : EJB server : EJB : NT host : browser : client host : test test : : client test client client : EJB 21 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 22: Other Interesting EJB Tests • • • • • Stress Testing Mixed/Randomized Loads Scenario Testing Security Testing Configuration Testing 22 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 23: Anatomy of an EJB Test Client Driver Get JNDI InitialContext //[WebSphere302 getInitialContext] public static Context getInitialContext(String urlName) throws javax.naming.NamingException { Hashtable env = new Hashtable(); env.put(Context.PROVIDER_URL, "iiop://" + urlName); env.put("java.naming.factory.initial", "com.ibm.ejs.ns.jndi.CNInitialContextFactory"); env.put("javax.naming.Context.INITIAL_CONTEXT_FACTORY", "com.ibm.ejs.ns.jndi.CNInitialContextFactory"); InitialContext ctx = new InitialContext(env); return ctx; } 1 2 Lookup Home Interface in JNDI Tree java.lang.Object homeObject = jndi.lookup("OECustomer"); com.testmybeans.customer.CustomerHome home = (com.testmybeans.customer.CustomerHome) javax.rmi.PortableRemoteObject.narrow((org.omg.CORBA.Object) homeObject, com.testmybeans.customer.CustomerHome.class); 23 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 24: Anatomy of an EJB Test Client Driver Get a Bean Instance if (m_ds.getRule().equals("Data table")) h = home.findByPrimaryKey(pkey0); else h = home.create(arg0); Exercise Bean's Business Methods timer.start(m_cSetters, "setCustomerAddress", sValue); h.setCustomerAddress(sValue); timer.stopAndLog(); 3 4 5 Log Results timer.start (m_cSetters, "setCustomerAddress", sValue); h.setCustomerAddress(sValue); timer.stopAndLog(); 24 BOF-1303, EJB™ Scalability/Load Test info@ejbtest.com http://www.ejbtest.com/
Slide 25: 25 BOF-1303, EJB™ Scalability/Load Test

   
Time on Slide Time on Plick
Slides per Visit Slide Views Views by Location