Using JMeter for Testing a Data Center. Siegfried Goeschl

Similar documents
Web Application Testing. Web Performance Testing

How To Test A Web Server

Various Load Testing Tools

Hardware/Software Guidelines

Informatica Data Director Performance

Architecture and Mode of Operation

Evaluation of Load/Stress tools for Web Applications testing

Performance Analysis of webmethods Integrations using Apache JMeter Information Guide for JMeter Adoption

Features of The Grinder 3

Server Virtualization with Windows Server Hyper-V and System Center

Performance Testing and Optimization in Web-Service Based Applications

Load and Performance Load Testing. RadView Software October

Summer Internship 2013 Group No.4-Enhancement of JMeter Week 1-Report-1 27/5/2013 Naman Choudhary

Content Distribution Management

WEBLOGIC ADMINISTRATION

Performance Testing Process A Whitepaper

Open Source and Commercial Performance Testing Tools

Scalability Factors of JMeter In Performance Testing Projects

JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers

Comparative Study of Load Testing Tools

NetIQ Access Manager 4.1

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

Server Virtualization with Windows Server Hyper-V and System Center

Performance Testing. Why is important? An introduction. Why is important? Delivering Excellence in Software Engineering

Managing your Red Hat Enterprise Linux guests with RHN Satellite

Oracle Communications WebRTC Session Controller: Basic Admin. Student Guide

Jitterbit Technical Overview : Microsoft Dynamics CRM

SERENA SOFTWARE Authors: Bill Weingarz, Pete Dohner, Kartik Raghavan, Amitav Chakravartty

SOA Solutions & Middleware Testing: White Paper

Performance Testing Tools: A Comparative Analysis

How To Test Your Web Site On Wapt On A Pc Or Mac Or Mac (Or Mac) On A Mac Or Ipad Or Ipa (Or Ipa) On Pc Or Ipam (Or Pc Or Pc) On An Ip

Server Virtualization with Windows Server Hyper-V and System Center

Performance Analysis of Lucene Index on HBase Environment

StreamServe Persuasion SP5 StreamStudio

Ignify ecommerce. Item Requirements Notes

Integration Knowledge Kit Developer Journal

Maintaining a Microsoft SQL Server 2008 Database

Oracle Exam 1z0-599 Oracle WebLogic Server 12c Essentials Version: 6.4 [ Total Questions: 91 ]

Sage CRM Technical Specification

An Oracle White Paper July Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide

Server-Virtualisierung mit Windows Server Hyper-V und System Center MOC 20409

Load Testing with JMeter

Case Study - I. Industry: Social Networking Website Technology : J2EE AJAX, Spring, MySQL, Weblogic, Windows Server 2008.

SysPatrol - Server Security Monitor

Performance Testing Process

Oracle WebLogic Server 11g Administration

Architecture and Mode of Operation

SERENA SOFTWARE Authors: Bill Weingarz, Pete Dohner, Kartik Raghavan, Amitav Chakravartty

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune Tel: /

Adobe ColdFusion 11 Enterprise Edition

Explain how to prepare the hardware and other resources necessary to install SQL Server. Install SQL Server. Manage and configure SQL Server.

Performance Testing of Java Enterprise Systems

MySQL Enterprise Monitor

Automated Process Center Installation and Configuration Guide for UNIX

Laserfiche Hardware Planning and Specifications. White Paper

WHITE PAPER. Domo Advanced Architecture

WHAT WE NEED TO START THE PERFORMANCE TESTING?

JAMF Software Server Installation and Configuration Guide for Linux. Version 9.0

Oracle Primavera P6 Enterprise Project Portfolio Management Performance and Sizing Guide. An Oracle White Paper October 2010

Performance Optimization For Operational Risk Management Application On Azure Platform

Deployment patterns for Fusion Middleware. a best practice session by Simon Haslam & Jacco H. Landlust

Server Installation Manual 4.4.1

MOC SERVER VIRTUALIZATION WITH WINDOWS SERVER HYPER-V AND SYSTEM CENTER

Installing and Configuring Windows Server Module Overview 14/05/2013. Lesson 1: Planning Windows Server 2008 Installation.

20409B: Server Virtualization with Windows Server Hyper-V and System Center

LICENSE4J LICENSE MANAGER USER GUIDE

Web Service Testing. SOAP-based Web Services. Software Quality Assurance Telerik Software Academy

Course Outline. Create and configure virtual hard disks. Create and configure virtual machines. Install and import virtual machines.

Business white paper. HP Process Automation. Version 7.0. Server performance

Siebel & Portal Performance Testing and Tuning GCP - IT Performance Practice

ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy

Using WebLOAD to Monitor Your Production Environment

Course Syllabus. At Course Completion

6231A - Maintaining a Microsoft SQL Server 2008 Database

Qualogy M. Schildmeijer. Whitepaper Oracle Exalogic FMW Optimization

Hudson configuration manual

TheraDoc v4.6.1 Hardware and Software Requirements

Server Virtualization with Windows Server Hyper-V and System Center

JAMF Software Server Installation and Configuration Guide for Linux. Version 9.2

Developing ASP.NET MVC 4 Web Applications MOC 20486

FROM BANNER 8 TO BANNER XE. What s the story?

Contents Introduction... 5 Deployment Considerations... 9 Deployment Architectures... 11

Sage 300 ERP 2014 Compatibility guide

Jitterbit Technical Overview : Microsoft Dynamics AX

A Comparison of Software Architectures for E-Business Applications

JAMF Software Server Installation and Configuration Guide for OS X. Version 9.2

Bringing Value to the Organization with Performance Testing

GlobalSCAPE DMZ Gateway, v1. User Guide

Installing and Configuring Websense Content Gateway

System Requirements for Netmail Archive

CSE-427. Report on Project-2. Mahmudur Rahman. Group- 3. Prepared fordr. Shazzad Hosain. Prepared bym Aminur Rahaman. Advanced Software Engineering

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

Blackboard Learn TM, Release 9 Technology Architecture. John Fontaine

JAMF Software Server Installation and Configuration Guide for OS X. Version 9.0

MEGA Web Application Architecture Overview MEGA 2009 SP4

Web Applications Testing

With Red Hat Enterprise Virtualization, you can: Take advantage of existing people skills and investments

Transcription:

Using JMeter for Testing a Data Center Siegfried Goeschl 1

Siegfried, do you want to do some performance testing? Well, what would you like to test? 2

Some Data Centers with 300 servers, MSSQL clusters, Oracle RACs, large SAN storage, 1.5 million registered users, 750 call center agents, backup data center over dark fiber 3

4

The Challenge Ahead Performance testing on critical path Prohibitive contractual penalties Lots of politics and finger-pointing Your performance tests are broken Complex test scenarios Often broken by new deployment 5

Performance Test Scope End to end performance acceptance test Mandatory and client-witnessed test Strict acceptance criteria regarding throughput number of errors severity of errors 6

Subsystems Under Test Transaction web service interface processing 10,5 million transactions per day CRM web service interfaces being used by 750 concurrent call center agents Public self-care web portal supporting 400 concurrent & active web user sessions 7

Performance Test Types Baseline Test One hour average load Stress Test One hour peak load Endurance Test 24 hours maximum load 8

Performance Test Tools Subsystem Planned Delivered CRM Web Service Public Web Portal Transaction Interface 9

Testing Hardware Six dedicated load injectors Windows 2008 Server 3 physical and 3 virtual boxes Dual quad-cores with 8 GB RAM No direct access Citrix over RDP over RDP 10

What Is JMeter? Performance Test Tool Web Testing (HTTP/HTTPS) SOAP JDBC, LDAP, SMTP, JMS,... 11

Why Using JMeter? It s coming from the ASF Field-tested software No costs for virtual users Extensible using scripts and Java libraries Run from GUI, Ant task and command line 12

JMeter Goodies Proxy server to record script Save request and response on error Constant Throughput Timer Summarizer for non-gui tests Remote shutdown of running tests 13

Speed Up JMeter Use SOAP/XML-RPC Request Sampler faster than WebService(SOAP) Sampler Avoid HTTPS when possible BeanShell scripts work best Minimize scripting Move large junks of scripting into libraries 14

JMeter Ant Integration <jmeter jmeterhome="${jmeter.home}" testplan="${jmeter.test.script}" failureproperty="jmeter.test.failure" jmeterproperties="${jmeter.work.dir}/jmeter.properties" resultlog="${jmeter.test.result}"> <jvmarg value="-xmx${jmeter.memory.max}" /> <jvmarg value="-dsun.security.ssl.allowunsaferenegotiation=true" /> <property name="jmeterengine.nongui.port" value="${nongui.port}"/> <property name="log_file" value="${jmeter.report.dir}/jmeter.log"/> <property name="user.language" value="en"/> </jmeter> 15

Things We Did To JMeter Three million WS requests over HTTPS requests where the server closes the socket after each request Sending up to 400 SOAP requests / sec Sending 400 KB SOAP requests 70 MByte/sec over the wire Using up to 750 worker threads per JVM 64-bit JVM with -Xmx=2048M 16

JMeter Reporting ASP.NET Website 17

JMeter Reporting No Service Level Agreement reporting HTML reports done using XSLT XSLT does not scale We have huge JMeter result files Unable to create formal test report 18

JMeter Reporting Result of a 2,6 GByte JTL File 19

JMeter SLA Report Merge multiple JTL files StAX parser to process large JTL file Statistic processing done by JAMon HTML export of JAMon model Available under https://github.com/ sgoeschl/jmeter-sla-report 20

21

JMeter SLA Report <java classname="org.apache.jmeter.extra.report.sla.main" classpathref="jmeter.class.path"> <sysproperty key="jmeter.thread.count" value="..."/> <sysproperty key="jmeter.thread.rampup" value="..."/> <sysproperty key="jmeter.thread.loops" value="..."/> <sysproperty key="jmeter.server.endpoint" value="..."/> <arg value="${jmeter.test.summary-report}"/> <arg value="${jmeter.test.result}"/> </java> 22

ASP.NET Web Sites 23

ASP.NET Web Sites Hidden fields and JavaScript parameters ViewState EventValidation EventTarget ASP.NET security features Ajax calls 24

ASP.NET Web Sites Customer registration increased from 8 to 32 HTTP requests over a few weeks ViewState Errors were popping up after each and every release Impossible to fix broken scripts under pressure 25

ASP.NET Web Sites Switched from JMeter to WAPT Pro with ASP.NET module 4-6 hours to write new script Disabled security ASP.NET feature since we still got errors under heavy load 26

Some More Thoughts Test your test tools No software installation Take two (or more) Automation is your friend Performance test for everyone 27

Test Your Test Tools Tests tools are buggy Multi-threading issues with soapui Pro Multi-threading issues with WAPT Pro Replaced soapui Pro with JMeter 28

No Software Installation Portable Apps on USB Stick Run JMeter directly from USB Stick Clone USB Stick to hard disk Have all your tools on the USB stick Editor, Portable Git,... 29

Take Two (or more) A minimum of two share-nothing load injectors are required to prove that the servers is causing the performance bottleneck (and not your test tool) We used a maximum of five sharenothing load injectors simultaneously 30

Automation Is Your Friend Testing at night and over the weekend Test execution managed by Hudson Test failures triggers email notification Test protocols are copied to FTP server 31

Performance Tests for Everyone All test scenarios are configured as Hudson jobs Baseline, stress & endurance test Everyone can start and monitor a performance test scenario over the web browser Even developers can run performance tests 32

Performance Tests for Everyone 33

34

The few things you should take home 35

Lessons Learned Tests tools are buggy Make sure that they work for you JMeter is perfectly able to run large performance tests reliably JMeter might not be handy for complex web sites Switched from JMeter to WAPT Pro 36

Lessons Learned Performance tests are a valuable asset Testing database failover Testing data center replication & failover Testing different server setups Creation and maintenance of complex performance test suite is a project on its own 37

Questions & Answers 38

Resources JMeter SLA Report JAMon API JMeter ANT Tasks WAPT Pro soapui https://github.com/sgoeschl/jmeter-sla-report http://jamonapi.sourceforge.net/ http://www.programmerplanet.org/pages/ projects/jmeter-ant-task.php http://www.loadtestingtool.com http://www.soapui.org/ 39

The Software Stack JMeter ANT Git soapui Pro Hudson Groovy WAPT Pro Portable Apps JavaScript 40