Technical University of Darmstadt J2EE Performance and Scalability – From Measuring to Predicting Samuel Kounev Databases and Distributed Systems Group,

Slides:



Advertisements
Similar presentations
TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
Advertisements

Ernst Oberortner Vienna University of Technology.
2 Manoj P Managing Changes without a Crystal-ball.
Tales from the Lab: Experiences and Methodology Demand Technology User Group December 5, 2005 Ellen Friedman SRM Associates, Ltd.
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Business Alignment Using Enterprise Architecture
J0 1 Marco Ronchetti - Basi di Dati Web e Distribuite – Laurea Specialistica in Informatica – Università di Trento.
J0 1 Marco Ronchetti - Basi di Dati Web e Distribuite – Laurea Specialistica in Informatica – Università di Trento.
Pricing for Utility-driven Resource Management and Allocation in Clusters Chee Shin Yeo and Rajkumar Buyya Grid Computing and Distributed Systems (GRIDS)
Dynamic Power Redistribution in Failure-Prone CMPs Paula Petrica, Jonathan A. Winter * and David H. Albonesi Cornell University *Google, Inc.
September 2013 ASTM Officers Training Workshop September 2013 ASTM Officers Training Workshop Membership & Roster Maintenance September 2013 ASTM Officers.
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
19 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Developing Web Services.
1 Copyright © 2005, Oracle. All rights reserved. Introduction.
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
11 Copyright © 2005, Oracle. All rights reserved. Creating the Business Tier: Enterprise JavaBeans.
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
6 Copyright © 2005, Oracle. All rights reserved. Building Applications with Oracle JDeveloper 10g.
SOA for EGovernment 1 Emergency Services Enterprise Framework: A Service-Oriented Approach Sukumar Dwarkanath COMCARE Michael Daconta Oberon Associates.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
0 - 0.
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
ADDING INTEGERS 1. POS. + POS. = POS. 2. NEG. + NEG. = NEG. 3. POS. + NEG. OR NEG. + POS. SUBTRACT TAKE SIGN OF BIGGER ABSOLUTE VALUE.
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Addition Facts
Year 6 mental test 5 second questions
Enterprise Java and Data Services Designing for Broadly Available Grid Data Access Services.
The Impact of Soft Resource Allocation on n-tier Application Scalability Qingyang Wang, Simon Malkowski, Yasuhiko Kanemasa, Deepal Jayasinghe, Pengcheng.
Year 6/7 mental test 5 second questions
BT Wholesale October Creating your own telephone network WHOLESALE CALLS LINE ASSOCIATED.
Utility Optimization for Event-Driven Distributed Infrastructures Cristian Lumezanu University of Maryland, College Park Sumeer BholaMark Astley IBM T.J.
DOROTHY Design Of customeR dRiven shOes and multi-siTe factorY Product and Production Configuration Method (PPCM) ICE 2009 IMS Workshops Dorothy Parallel.
Constructing a Non-Linear Model with Neural Networks for Workload Characterization Richard M. Yoo Han Lee Kingsum Chow Hsien-Hsin S. Lee Georgia Tech Intel.
QA practitioners viewpoint
Performance Testing - Kanwalpreet Singh.
Web Performance Tuning Lin Wang, Ph.D. US Department of Education Copyright [Lin Wang] [2004]. This work is the intellectual property of the author. Permission.
How To Leverage Your Data? Presented by Michel Ruel, Top Control Inc. 1.
© 2011 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary. Towards a Model-Based Characterization of Data and Services Integration Paul.
Introduction to the new mainframe: Large-Scale Commercial Computing © Copyright IBM Corp., All rights reserved. Chapter 2: Capacity.
1 CS533 Modeling and Performance Evaluation of Network and Computer Systems Capacity Planning and Benchmarking (Chapter 9)
1 Sizing the Streaming Media Cluster Solution for a Given Workload Lucy Cherkasova and Wenting Tang HPLabs.
1 Performance Measurement of a Prosspero Based Trouble Ticket System Nagendra Nagarajayya Staff Engineer Sun Microsystems, Inc. 1 Vincent Perrot OSS/J.
Jonathan Berry President & CEO Leveraging a Help Desk as part of a Hyperion Center of Excellence Copyright © 2014, Accelatis.
J2EE Architecture Overview
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
1 Developing a Predictive Model for Internet Video Quality-of-Experience Athula Balachandran, Vyas Sekar, Aditya Akella, Srinivasan Seshan, Ion Stoica,
Database System Concepts and Architecture
Chapter 10 Software Testing
Executional Architecture
Addition 1’s to 20.
25 seconds left…...
Test B, 100 Subtraction Facts
Improving OLTP scalability using speculative lock inheritance Ryan Johnson, Ippokratis Pandis, Anastasia Ailamaki.
Week 1.
Number bonds to 10,
A SMALL TRUTH TO MAKE LIFE 100%
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 30 Slide 1 Security Engineering 2.
Capacity Planning and Predicting Growth for Vista Amy Edwards, Ezra Freeloe and George Hernandez University System of Georgia 2007.
February 11, 2003Ninth International Symposium on High Performance Computer Architecture Memory System Behavior of Java-Based Middleware Martin Karlsson,
Load Test Planning Especially with HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
PowerTier EJB in High-Performance Applications John Killoran European Technical Services Manager Persistence Software.
Gregory Leake Microsoft Corporation May 15, 2009.
/ Copyright © Siemens AG All rights reserved. Corporate Technology Performance Prediction of Client-Server Systems by High-Level Abstraction Models.
Measuring Application Server Performance using ECperf David Lucas President Lucas Software Engineering, Inc
SPECjAppServer2004 Scott Oaks Java Enterprise Performance.
Architecture & System Performance
Architecture & System Performance
Evaluating Transaction System Performance
Presentation transcript:

Technical University of Darmstadt J2EE Performance and Scalability – From Measuring to Predicting Samuel Kounev Databases and Distributed Systems Group, TU-Darmstadt SPEC-OSG Java Subcommittee SPEC Benchmark Workshop 2006

Motivation MEASURING PREDICTING What performance would the application exhibit and how much hardware would be needed to meet SLAs? How do we ensure that the application design does not have any inherent scalability bottlenecks? Which platform would provide the best cost/performance ratio for a given application? How do we ensure that the selected platform does not have any inherent scalability bottlenecks? TU-Darmstadt © S. Kounev 2 J2EE applications becoming increasingly ubiquitous. Quality of service requirements of crucial importance! System architects and deployers faced with questions such as:

Roadmap & Agenda Will present a case study with SPECjAppServer2004. Benchmark used as a representative J2EE application. A systematic approach for performance prediction introduced. Agenda: Overview of SPECjAppServer2004 Approach and methodology for performance prediction Case study of SPECjAppServer2004 Validation of the approach Summary and conclusions TU-Darmstadt © S. Kounev 3

The SPECjAppServer2004 Benchmark Much more complex and substantially different from previous versions of SPECjAppServer A new enhanced workload exercising all major J2EE services including: The Web Container (Servlets and JSPs) The EJB Container (session beans and entity beans) Container-Managed Persistence JMS and Message Driven Beans Transaction Management Database Connectivity Exercises all parts of the underlying infrastructure including hardware, OS, JVM software, DBMS, JDBC drivers, system network TU-Darmstadt © S. Kounev 4

SPECjAppServer2004 Business Model TU-Darmstadt © S. Kounev 5

Sample Deployment Environment (Sun) 6

Approaches to Performance Prediction Educated Guess + Quick, easy and cheap. - Very inaccurate and risky. Performance Modeling + Often cheaper and quicker than load-testing. Could be applied at the design stage. - Extremely complex. Accuracy depends on how representative models are. Load Testing (brute force) + Accurate. Helps to identify bottlenecks and fine-tune system prior to production. - Expensive and time-consuming. Assumes system availability for testing. 7

Modeling Approach - Queueing Petri Net (QPN) models used - Combine queueing networks and Petri nets - Allow integration of queues into places of PNs - Ordinary vs. Queueing Places - Queueing Place = Queue + Depository -Benefits of using QPNs: Excellent modeling power and expressiveness. Can be exploited to accurately model both hardware and software aspects of system behavior (ISPASS03). The knowledge of the structure of QPNs can be exploited for efficient analysis by means of simulation (Performance Evaluation06). Can be used to combine qualitative and quantitative system analysis. TU-Darmstadt © S. Kounev 8

Performance Modeling Methodology 1.Establish performance modeling objectives. 2.Characterize the system in its current state. 3.Characterize the workload. 4.Develop a performance model. 5.Validate, refine and/or calibrate the model. 6.Use model to predict system performance. 7.Analyze results and address modeling objectives. TU-Darmstadt © S. Kounev 9 Performance Engineering of Distributed Component-Based Systems - Benchmarking, Modeling and Performance Prediction, © Shaker Verlag, 2006, ISBN:

Case Study: Modeling SPECjAppServer TU-Darmstadt © S. Kounev 10

Modeling Objectives Normal Conditions: 72 concurrent dealer clients (40 Browse, 16 Purchase, 16 Manage) and 50 planned production lines in the mfg domain. Peak Conditions: 152 concurrent dealer clients (100 Browse, 26 Purchase, 26 Manage) and 100 planned production lines in the mfg domain. Goals: Predict system performance under normal operating conditions with 4 and 6 application servers. Predict how much system performance would improve if the load balancer is upgraded with a slightly faster CPU. Study the scalability of the system as the workload increases and additional application server nodes are added. Determine which servers would be most utilized under heavy load and investigate if they are potential bottlenecks. TU-Darmstadt © S. Kounev 11

Performance Model 12

Performance Prediction TU-Darmstadt © S. Kounev 13

Performance Prediction (2) TU-Darmstadt © S. Kounev 14

150 Browse Clients 200 Browse Clients TU-Darmstadt © S. Kounev 15 Performance Prediction (3)

6. Predict System Performance (4) 16

6. Predict System Performance (5) Sc.3: 300 B, 30 P, 30 M, 120 PL Max Error 16.8% Sc.4: 270 B, 90 P, 60 M, 120 PL Max Error 15.2% TU-Darmstadt © S. Kounev 17

Results Analysis TU-Darmstadt © S. Kounev 18

Summary and Conclusions TU-Darmstadt © S. Kounev 19 Studied a representative J2EE application and predicted its performance under realistic load conditions. The modeling error for response time did not exceed 21.2% and was much lower for throughput and utilization. QPN models can be exploited for accurate performance prediction in realistic scenarios. Proposed methodology provides a powerful tool for sizing and capacity planning. Performance prediction is hard, but its possible!

Acknowledgements TU-Darmstadt © S. Kounev 20 Kaivalya Dixit (in memoriam), SPECs Co-founder, Former SPEC President and Chair of the Java Subcommittee. All members of the OSG Java Subcommittee, eSPECially: John Stecher, IBM Tom Daly and Akara Sucharitakul, Sun Microsystems Ricardo Morin, Intel Steve Realmuto, BEA

Thank You for Your Patience Questions? TU-Darmstadt © S. Kounev 21 Enjoy your lunch!