2 French press magazine group (#3) Subsidiary of Mondadori Italia ~ 30 magazines 10,6% market in ,6 million in 2012
3 In Web Development since 1999 Php for 14 years Java for 9 years Technical Project Manager for Mondadori France
4 Reason #1 : Tune platform Determine capacity of architecture Test and find best performance configs Find the limits to your platform
5 Reason #2 : Test application code Test application in real action Unit tests are jailed and not multi-users Detect pro-actively failure or memory leak
6 Reason #3 : Find and resolve failures On an environment same as production Time to (try to) reproduce failure(s) (vm clone) Analyze problem, fix it, verify the solution You won t and don t touch the production!
7 Reason #4 : Improve delivery process Test your application before deployment If it passes unit and scalability tests, go on prod It costs, but on high risk app., it s cheaper than a bug If you need to do #3, you are ready for it.
8 HUMAN TESTS You need people (of course Bozo!) Heavy work to prepare tests Heavy work to train users Heavy work to get feedback from users
9 HUMAN TESTS Random degree depends only on users Closeness to reality (or even the plan)? Who knows?! Hard to do the first test! It has to be short! Don t count on a second test! Users get bored!
10 HUMAN TESTS : Conclusions High costs on time, energy and money Results are not really what we expect High risk of ending up in jail for mass murder! Only good reason to do it, is for political reasons!
11 COMPUTED TESTS You need only you and maybe some admin sys. Heavy work to prepare scenario No user to train You have assertions to get/verify results
12 COMPUTED TESTS Random degree depends only your scenarios Closeness to reality depends on you Hard to do the first test! You can play and replay them as you want!
13 COMPUTED TESTS : Conclusions Cost (only) YOUR time, YOUR energy Results reflect the time you spent on it You can stay friends with your colleagues! Only reason not to do it : time or laziness
14 Comparison : Humans Computed Persons needed Many Close to 1 Random degree Medium to high Low to medium Closeness to reality Depends on testers Depends on you Difficulty to play once Medium Medium Difficulty to re-play Higher Low Time period of tests Short As you want Costs (not only on money) Medium to Life Low
15 Oh Yeah Baby! Come closer! jmeter Remote jmeter Test Server Client & Server on same app.
16 It s a Client-Server Application You need to avoid traffic from network You need to reduce impact on your network You need to reduce distance between server and jmeter Use VM on same node or Physical server on same switch
17 jmeter Client WorkBench Test Plan Test Controller Make scenario / tests Play Tests
18 #1 part : Preparation of tests You have to know the application You should know what users do (or will do) You should make small tests rather than a big one You should plan relevant tests for application
19 #2 part : Run tests You should do it more than once You should do several scenario to be sure and crossreference results You should get/save all data that you could have You have to write all your actions and results
20 #3 part : Interpret results If you don t, you let people do it by themselves You need to say more than It s work (or not)! Sloppy analysis will invalidate your time spent / work Months or years later, the context has been forgotten
21 Interpret results 25% Running test 15% Creating Scenario 60%
22 manually, the boring way You have to put all elements You have to configure all elements POST / GET data HTTP headers
23 with the proxy, the happy way You surf on server with your browser jmeter will record data sent GET / POST jmeter will handle HTTP headers jmeter will create a response assertion for each URL
24 In both cases (manually or by proxy) : you have to add realism with timers Timers will simulate user reading or pausing Nobody clicks a million times per minute Unless you test a website for people on Ecstasy
25 Stop talking, and make a live demo!
26 Test Plan Add Thread Group Add HTTP Request Defaults Config Server Name and port Add HTTP Cookie Manager Check Clear cookie on each iteration
27 Workbench : Add HTTP proxy Check Add Assertions Select Recording controller Use patterns to filter (or not) Add Listener > View Results Tree
28 Record your visit Do a first run with 1 user Complete Response Assertion Clean/Remove non-relevant links Do another run for check
29 On response assertions Test response code is useless and wrong Test on specific text for each page Use a sample text Use a regular expression
30 On Thread Group Number of threads (users?!) Number of independent threads launched Ram-up period in seconds Seconds between the beginning of a thread and the next
31 Aggregate report
32 Results Tree
33 Graph Result (if you can understand it)
34 Why FusionReactor? A HUMAN CAN UNDERSTAND THIS!!!!
35 Where to look?
36 Where to look? JVM Memory
37 Where to look? CPU
38 Where to look? CPU
39 Where to look? Database Requests
40 Where to look? DB Request Average
41 Where to look? DB Request Average
42 Where to look? Request Activity
43 Where to look? Request Activity
44 Where to look? Request Activity
45 Where to look? Request Activity
46 Get / watch/ verify all data that you can have. Don t base all your interpretation on only one tool. Be careful with SNMP monitoring tools (like cacti/zabbix) A new monitoring tool on beta : Morpheus for Railo.
47 Add more tests (other paths, other ways) Add complexity to tests (but not too much) Write a strategy of testing (You could have to justify it) Interpret results
48 Clean previous results after each run. Restart services before each run Test once manually Test as human on a run to sniff around Test each scenario separately before mixing
49 Test with data loaded from a CSV file (like auth) Connect and use auth from a LDAP Retrieve data from the loaded page Follow links from a starting page (not recommended) Test java or database directly
50 Request/sec. is not User capacity Users take from 30 to 60 sec/page 20 req/sec capacity => actives users capacity per sec Inversely : (Users target / avg time spend per page) = Req/sec target
51 Michael Hnat from BlueGras FusionReactor / Intergral Team Aurélien Deleusière from Prisma IT Jocelyne Treilly from Mondadori France
52 Questions? Thanks for your attention Twitter Don t leave now I get a last surprise!
Network Monitoring with Xian Network Manager Did you ever got caught by surprise because of a network problem and had downtime as a result? What about monitoring your network? Network downtime or network
Buying APM in the enterprise A survival guide from a veteran performance geek Buying APM in the enterprise A survival guide from a veteran performance geek Introduction...3 Part one: APM maturity as you
Developing Real Time Tracking of User Behavior, with Google Analytics for Mobile Phone Devices Ahmed Hulo & Johnny To Master's Thesis Department of Design Sciences Lund University EAT 2015 Abstract Sony
Resource Monitoring During Performance Testing Experience Report by Johann du Plessis Introduction During a recent review of performance testing projects I completed over the past 8 years, one of the goals
Zabbix 1.8 Network Monitoring Rihards Olups Chapter No.2 "Getting Your First Notification" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter
Chapter 11 of WebSphere Application Server V7 Administration and Configuration Guide, SG24-7615 WebSphere Application Server V7: Monitoring the Runtime Being able to measure and monitor system interactions
Welcome Welcome to Webserver Stress Tool (Freeware) Most websites and web applications run smoothly and correctly as long as only one user (e.g., the original developer) or just a few users are visiting
m Windows 7 Reviewer s Guide A First Look at Windows 7 DRAFT 2 The information contained in this document represents the current view of Microsoft Corp. on the issues discussed as of the date of publication.
HP Performance Engineering Best Practices Series for Performance Engineers and Managers Performance Monitoring Best Practices Document Release Date: 201 Software Release Date: 2014 Legal Notices Warranty
1 How to Scale out SharePoint Server 2007 from a single server farm to a 3 server farm with Microsoft Network Load Balancing on the Web servers. Back to Basics Series By Steve Smith, MVP SharePoint Server,
Confio Ignite Installation and User Guide Confio Igniter Suite Copyright 2009 Confio Corporation. All rights reserved. The programs (which include both the software and documentation) contain proprietary
Best Practices for Deploying and Managing Linux with Red Hat Network Abstract This technical whitepaper provides a best practices overview for companies deploying and managing their open source environment
Jazz Performance Monitoring Guide Author: Daniel Toczala, Jazz Jumpstart Manager The goal of this performance monitoring guide is to provide the administrators and architects responsible for the implementation
Top 10 Most Common Java Performance Problems Top 10 Most Common Java Performance Problems Table of Contents Introduction... 3 Database... 4 1. Death by 1,000 Cuts: The Database N+1 Problem... 5 2. Credit
What is PPC? PPC stands for Pay-Per-Click. When you market your website with a Pay-Per-Click campaign, your website is prominently displayed on the search engine results pages to customers who are looking
Zabbix : Interview 2012 of Alexei Vladishev Monitoring-fr : Results in 2011 for Zabbix: objectives achieved? What are your main satisfactions and disappointments? Alexei Vladishev : I am happy to say that
MASARYK UNIVERSITY FACULTY OF INFORMATICS Best Practices in Scalable Web Development MASTER THESIS Martin Novák May, 2014 Brno, Czech Republic Declaration Hereby I declare that this paper is my original
AMIS Edisonbaan 15 Postbus 24 3430 AA Nieuwegein T +31(0) 30 601 60 00 E email@example.com I amis.nl BTW nummer NL8117.70.400.B69 KvK nummer 30114159 Statutair gevestigd te Enschede Whitepaper Measuring, analyzing,
Getting Started with Flurry Analytics Bhanu Birani Chapter No. 1 "Getting Ready with Flurry" In this package, you will find: A Biography of the author of the book A preview chapter from the book, Chapter
HP Performance Engineering Best Practices Series for Performance Engineers and Managers Performance Monitoring Best Practices Document Release Date: May 2009 Software Release Date: May 2009 Legal Notices
Application Performance Management for Enterprise Applications White Paper from ManageEngine Web: Email: firstname.lastname@example.org Table of Contents 1. Introduction 2. Types of applications used
IBM i on Power - Performance FAQ February 5, 2013 IBM Corporation Table of Contents 1 Introduction 8 1.1 Purpose of this document 8 1.2 Overview 8 1.3 Document Responsibilities 8 2 What Is Performance?
Best Practices Guide McAfee epolicy Orchestrator for use with epolicy Orchestrator versions 4.5.0 and 4.0.0 COPYRIGHT Copyright 2011 McAfee, Inc. All Rights Reserved. No part of this publication may be
The Definitive IP PBX Guide Understand what an IP PBX or Hosted VoIP solution can do for your organization and discover the issues that warrant consideration during your decision making process. This comprehensive