SlideShare a Scribd company logo
1 of 20
Download to read offline
WebStress Academy

Bill McCormick & Pat McGibbon
Global Summit 2011
WebStress Academy

 • Agenda
    – Introduce the tool
    – Record a script
    – Edit the script
    – Randomization
    – Define a test with more then one or more scripts
    – Execute a benchmark run
    – Validate the run
What is WebStress

 • A utility being shipped as part of the product in 2011
 • A tool that allows for recording http traffic between any client
   and server that supports running thru a proxy
 • Allows for customizing and randomizing the data being
   utilizied from a given recorded base script
 • Can play back multiple recordings simultaneously to simulate
   load and verify results, including performance metrics
Why WebStress?

 • TrakCare performance evaluations required for certain bids
     – Brisbane
     – Edinburgh
 • LoadRunner and other tools for this can be very expensive
 • Managing CSP / Zen based applications requires a few little
   tricks to benchmark correctly
 • Has been used in dozens of benchmarks since 2002
Some core concepts

 • Controller
    – Manages the playback of a test and gathers results
 • Generator
    – Machine that is executing the script and randomization logic
      during playback. Can be same machine as controller
 • WebServer
    – The URL that the application is running over. In the case of a
      Cache system it also allows us to connect to the server
 • App Server
    – The actual database being used by the test under Cache
Continued

 • NoEncrypt Flag
    – Sets the flag that allows benchmark recordings and
      playback to work on CSP / Zen based solutions
 • No Delay
    – For non page content ignore recorded delays
    – js, html, css, jpg etc
 • No Results
    – For non page content ignore results
    – js, html, css, jpg simulates cacheing
Continued

 • Scripts
    – A collection of http requests that from a UI perspective
       represent a “transaction” or “workflow”
 • Tests
    – A collection of scripts that when combined represent a
      “server usage profile”
 • Save Page Source
    – For verification purposes this will loop over a script and
      save the returned page content to a local directory
Recording

 • WebStress has a facility that launches a listener on a defined
   port
 • A browser for example can be configured to use this port as
   a proxy and we capture the output
 • We will offer to set the no encrypt flag for a given cache
   service when the listener is launched
 • The recorder also generates a routine for providing
   randomization logic
 • Exercise 1
Customizing a Script
• Once a recording is completed we can edit it to change settings and
  values or completely randomize data being used
    – Parameters
       • These are name value pairs that were submitted via http
   – Http Headers
       • This is the information your browser added to the http request when it
         was POSTed or GET
   – URLs
       • These are the individual http requests captured. They can be removed
         or manually added

• Exercise 2
Creating a Test

 • Controls the playback of the various scripts
    – Scheduled
    – Start now
    – Run time
    – Warm up / Cool down
    – Using Delays
    – Page Source
Tests Continued

 • Adding Scripts
    – Select a script
    – Choose a Web Server
    – Define the rate
       • Sessions
       • Processes
   – URL Loopback
   – Target
 • Repeat as needed
Tests Continued

 • Adding Scripts
    – Select a script
    – Choose a Web Server
    – Define the rate
        • Sessions
        • Processes
    – URL Loopback
    – Target
 • Repeat as needed
 • Exercise 3
Running a Benchmark

 • Preparing a Test
     – Starts the processes on the Generator
     – Starts the controller’s listener that drives the generators and collects
       the data
 • Run the Test
    – The Controller sends the start signal to the generators
    – Results are ignored for the duration of the “warm up”
    – Live results display on this page
 • After the test
     – Results are processed
     – Jobs Halted
Running a Benchmark - Cont

 • While the test is running you will see information on the current Rates Per
   Minute. These are color coded to indicate how close to your target for a
   given script you are doing.
 • If you need to you can stop a test, adjust the settings for the Sessions and
   Processes and rerun the test again to aim closer to target
Continued

 • Exercise 4
Debug Mode

 • You have the option to run a script and have the returned pages be stored
   to disk. This is very handy for debugging a script and validating that things
   are performing correctly.
 • To do this we specify the Source Directory and the Save Page Source
   options in the test settings.
 • This creates a structure at that location that represents each script, and
   each time we looped thru the URLs
Continued

 • Exercise 5
WebStress Summary

 • Runs on 2011.1
 • Can be used against any http based application
 • Https not supported at this time
 • Keep Alive must be disabled during recording
WebStress Academy

 • Thank you
 • Bill McCormick - bill.mccormick@intersystems.com
 • Pat McGibbon - pat.mcgibbon@intersystems.com
 • Iain Bray - Lead developer
WebStress Academy

Bill McCormick
Global Summit 2011

More Related Content

What's hot

SAP on Azure Web Dispatcher High Availability
SAP on Azure Web Dispatcher High AvailabilitySAP on Azure Web Dispatcher High Availability
SAP on Azure Web Dispatcher High AvailabilityGary Jackson MBCS
 
Orchestration service v2
Orchestration service v2Orchestration service v2
Orchestration service v2Raman Gupta
 
Микросервисы со Spring Boot & Spring Cloud
Микросервисы со Spring Boot & Spring CloudМикросервисы со Spring Boot & Spring Cloud
Микросервисы со Spring Boot & Spring CloudVitebsk DSC
 
Tech Talk on Autoscaling in Apache Stratos
Tech Talk on Autoscaling in Apache StratosTech Talk on Autoscaling in Apache Stratos
Tech Talk on Autoscaling in Apache StratosVishanth Bala
 
SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...
SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...
SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...Sencha
 
Weblogic-clustering-failover-and-load-balancing-training
Weblogic-clustering-failover-and-load-balancing-trainingWeblogic-clustering-failover-and-load-balancing-training
Weblogic-clustering-failover-and-load-balancing-trainingUnmesh Baile
 
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterHow to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterAlon Girmonsky
 
Automated, Collection, and Enrichment (ACE)
Automated, Collection, and Enrichment (ACE)Automated, Collection, and Enrichment (ACE)
Automated, Collection, and Enrichment (ACE)Jared Atkinson
 
February 2017 HUG: Exactly-once end-to-end processing with Apache Apex
February 2017 HUG: Exactly-once end-to-end processing with Apache ApexFebruary 2017 HUG: Exactly-once end-to-end processing with Apache Apex
February 2017 HUG: Exactly-once end-to-end processing with Apache ApexYahoo Developer Network
 
Realtime classroom analytics powered by apache druid
Realtime classroom analytics powered by apache druid Realtime classroom analytics powered by apache druid
Realtime classroom analytics powered by apache druid Karthik Deivasigamani
 
Scale Apache with Nginx
Scale Apache with NginxScale Apache with Nginx
Scale Apache with NginxBud Siddhisena
 
Apache BookKeeper Distributed Store- a Salesforce use case
Apache BookKeeper Distributed Store- a Salesforce use caseApache BookKeeper Distributed Store- a Salesforce use case
Apache BookKeeper Distributed Store- a Salesforce use caseSalesforce Engineering
 

What's hot (20)

HTTP/2 Prioritization
HTTP/2 PrioritizationHTTP/2 Prioritization
HTTP/2 Prioritization
 
Optimiszing proxy
Optimiszing proxyOptimiszing proxy
Optimiszing proxy
 
Governor limits
Governor limitsGovernor limits
Governor limits
 
SAP on Azure Web Dispatcher High Availability
SAP on Azure Web Dispatcher High AvailabilitySAP on Azure Web Dispatcher High Availability
SAP on Azure Web Dispatcher High Availability
 
Orchestration service v2
Orchestration service v2Orchestration service v2
Orchestration service v2
 
Http2 in practice
Http2 in practiceHttp2 in practice
Http2 in practice
 
Микросервисы со Spring Boot & Spring Cloud
Микросервисы со Spring Boot & Spring CloudМикросервисы со Spring Boot & Spring Cloud
Микросервисы со Spring Boot & Spring Cloud
 
Tech Talk on Autoscaling in Apache Stratos
Tech Talk on Autoscaling in Apache StratosTech Talk on Autoscaling in Apache Stratos
Tech Talk on Autoscaling in Apache Stratos
 
How fast is it?
How fast is it?How fast is it?
How fast is it?
 
PerfTest in SOA
PerfTest in SOAPerfTest in SOA
PerfTest in SOA
 
Weblogic - clustering failover, and load balancing
Weblogic - clustering failover, and load balancingWeblogic - clustering failover, and load balancing
Weblogic - clustering failover, and load balancing
 
Using Dockers for DB Monitoring
Using Dockers for DB MonitoringUsing Dockers for DB Monitoring
Using Dockers for DB Monitoring
 
SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...
SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...
SenchaCon 2016: How to Give your Sencha App Real-time Web Performance - James...
 
Weblogic-clustering-failover-and-load-balancing-training
Weblogic-clustering-failover-and-load-balancing-trainingWeblogic-clustering-failover-and-load-balancing-training
Weblogic-clustering-failover-and-load-balancing-training
 
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterHow to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
 
Automated, Collection, and Enrichment (ACE)
Automated, Collection, and Enrichment (ACE)Automated, Collection, and Enrichment (ACE)
Automated, Collection, and Enrichment (ACE)
 
February 2017 HUG: Exactly-once end-to-end processing with Apache Apex
February 2017 HUG: Exactly-once end-to-end processing with Apache ApexFebruary 2017 HUG: Exactly-once end-to-end processing with Apache Apex
February 2017 HUG: Exactly-once end-to-end processing with Apache Apex
 
Realtime classroom analytics powered by apache druid
Realtime classroom analytics powered by apache druid Realtime classroom analytics powered by apache druid
Realtime classroom analytics powered by apache druid
 
Scale Apache with Nginx
Scale Apache with NginxScale Apache with Nginx
Scale Apache with Nginx
 
Apache BookKeeper Distributed Store- a Salesforce use case
Apache BookKeeper Distributed Store- a Salesforce use caseApache BookKeeper Distributed Store- a Salesforce use case
Apache BookKeeper Distributed Store- a Salesforce use case
 

Viewers also liked

Automating Ensemble Monitoring and Reporting
Automating Ensemble Monitoring and ReportingAutomating Ensemble Monitoring and Reporting
Automating Ensemble Monitoring and ReportingInterSystems Corporation
 
Autism tech grant 2011 awards final
Autism tech grant 2011 awards finalAutism tech grant 2011 awards final
Autism tech grant 2011 awards finalJoyce Whitby
 
Ebsford aquatic portfolio
Ebsford aquatic portfolioEbsford aquatic portfolio
Ebsford aquatic portfolioNick Hartley
 
Aquatic management final
Aquatic management finalAquatic management final
Aquatic management finalNick Hartley
 
Cache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure ApplicationsCache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure ApplicationsInterSystems Corporation
 
InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...
InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...
InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...InterSystems Corporation
 

Viewers also liked (8)

Advanced Zen
Advanced ZenAdvanced Zen
Advanced Zen
 
Automating Ensemble Monitoring and Reporting
Automating Ensemble Monitoring and ReportingAutomating Ensemble Monitoring and Reporting
Automating Ensemble Monitoring and Reporting
 
Autism tech grant 2011 awards final
Autism tech grant 2011 awards finalAutism tech grant 2011 awards final
Autism tech grant 2011 awards final
 
Ebsford aquatic portfolio
Ebsford aquatic portfolioEbsford aquatic portfolio
Ebsford aquatic portfolio
 
Aquatic management final
Aquatic management finalAquatic management final
Aquatic management final
 
Building BI Data Models With Deep See
Building BI Data Models With Deep SeeBuilding BI Data Models With Deep See
Building BI Data Models With Deep See
 
Cache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure ApplicationsCache Security- Adding Security to Non-Secure Applications
Cache Security- Adding Security to Non-Secure Applications
 
InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...
InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...
InterSystems Global Summit 2011 Presentation: Attracting, Hiring and Keeping ...
 

Similar to Benchmarking Performance and Scalability with Web Stress

Load testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerLoad testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerAndrew Siemer
 
Building & Testing Scalable Rails Applications
Building & Testing Scalable Rails ApplicationsBuilding & Testing Scalable Rails Applications
Building & Testing Scalable Rails Applicationsevilmike
 
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...Ram G Athreya
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSPC Adriatics
 
Performance testing in scope of migration to cloud by Serghei Radov
Performance testing in scope of migration to cloud by Serghei RadovPerformance testing in scope of migration to cloud by Serghei Radov
Performance testing in scope of migration to cloud by Serghei RadovValeriia Maliarenko
 
Architectures, Frameworks and Infrastructure
Architectures, Frameworks and InfrastructureArchitectures, Frameworks and Infrastructure
Architectures, Frameworks and Infrastructureharendra_pathak
 
Visual Studio 2010 for testers
Visual Studio 2010 for testersVisual Studio 2010 for testers
Visual Studio 2010 for testersArpit Dubey
 
Measuring IPv6 using ad-based measurement
Measuring IPv6 using ad-based measurementMeasuring IPv6 using ad-based measurement
Measuring IPv6 using ad-based measurementAPNIC
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1sqlserver.co.il
 
Servlet.ppt
Servlet.pptServlet.ppt
Servlet.pptkstalin2
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephenSteve Feldman
 
(ATS4-PLAT08) Server Pool Management
(ATS4-PLAT08) Server Pool Management(ATS4-PLAT08) Server Pool Management
(ATS4-PLAT08) Server Pool ManagementBIOVIA
 
How to Do a Performance Audit of Your .NET Website
How to Do a Performance Audit of Your .NET WebsiteHow to Do a Performance Audit of Your .NET Website
How to Do a Performance Audit of Your .NET WebsiteDNN
 
(ATS6-PLAT04) Query service
(ATS6-PLAT04) Query service (ATS6-PLAT04) Query service
(ATS6-PLAT04) Query service BIOVIA
 

Similar to Benchmarking Performance and Scalability with Web Stress (20)

Performance Testing Overview
Performance Testing OverviewPerformance Testing Overview
Performance Testing Overview
 
Load testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew SiemerLoad testing with Visual Studio and Azure - Andrew Siemer
Load testing with Visual Studio and Azure - Andrew Siemer
 
Fastest Servlets in the West
Fastest Servlets in the WestFastest Servlets in the West
Fastest Servlets in the West
 
Aem offline content
Aem offline contentAem offline content
Aem offline content
 
Building & Testing Scalable Rails Applications
Building & Testing Scalable Rails ApplicationsBuilding & Testing Scalable Rails Applications
Building & Testing Scalable Rails Applications
 
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
A Public Cloud Based SOA Workflow for Machine Learning Based Recommendation A...
 
SharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi VončinaSharePoint 2013 Performance Analysis - Robi Vončina
SharePoint 2013 Performance Analysis - Robi Vončina
 
Performance testing in scope of migration to cloud by Serghei Radov
Performance testing in scope of migration to cloud by Serghei RadovPerformance testing in scope of migration to cloud by Serghei Radov
Performance testing in scope of migration to cloud by Serghei Radov
 
Architectures, Frameworks and Infrastructure
Architectures, Frameworks and InfrastructureArchitectures, Frameworks and Infrastructure
Architectures, Frameworks and Infrastructure
 
Visual Studio 2010 for testers
Visual Studio 2010 for testersVisual Studio 2010 for testers
Visual Studio 2010 for testers
 
Measuring IPv6 using ad-based measurement
Measuring IPv6 using ad-based measurementMeasuring IPv6 using ad-based measurement
Measuring IPv6 using ad-based measurement
 
SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1SQL Explore 2012: P&T Part 1
SQL Explore 2012: P&T Part 1
 
Servlet.ppt
Servlet.pptServlet.ppt
Servlet.ppt
 
Servlet.ppt
Servlet.pptServlet.ppt
Servlet.ppt
 
Servlet1.ppt
Servlet1.pptServlet1.ppt
Servlet1.ppt
 
071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen071410 sun a_1515_feldman_stephen
071410 sun a_1515_feldman_stephen
 
(ATS4-PLAT08) Server Pool Management
(ATS4-PLAT08) Server Pool Management(ATS4-PLAT08) Server Pool Management
(ATS4-PLAT08) Server Pool Management
 
How to Do a Performance Audit of Your .NET Website
How to Do a Performance Audit of Your .NET WebsiteHow to Do a Performance Audit of Your .NET Website
How to Do a Performance Audit of Your .NET Website
 
(ATS6-PLAT04) Query service
(ATS6-PLAT04) Query service (ATS6-PLAT04) Query service
(ATS6-PLAT04) Query service
 
Salesforce Performance hacks - Client Side
Salesforce Performance hacks - Client SideSalesforce Performance hacks - Client Side
Salesforce Performance hacks - Client Side
 

Recently uploaded

IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
GenAI and AI GCC State of AI_Object Automation Inc
GenAI and AI GCC State of AI_Object Automation IncGenAI and AI GCC State of AI_Object Automation Inc
GenAI and AI GCC State of AI_Object Automation IncObject Automation
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIRAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIUdaiappa Ramachandran
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum ComputingGDSC PJATK
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdfJamie (Taka) Wang
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServicePicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServiceRenan Moreira de Oliveira
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.francesco barbera
 

Recently uploaded (20)

IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
GenAI and AI GCC State of AI_Object Automation Inc
GenAI and AI GCC State of AI_Object Automation IncGenAI and AI GCC State of AI_Object Automation Inc
GenAI and AI GCC State of AI_Object Automation Inc
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIRAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AI
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum Computing
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer ServicePicPay - GenAI Finance Assistant - ChatGPT for Customer Service
PicPay - GenAI Finance Assistant - ChatGPT for Customer Service
 
Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.
 

Benchmarking Performance and Scalability with Web Stress

  • 1. WebStress Academy Bill McCormick & Pat McGibbon Global Summit 2011
  • 2. WebStress Academy • Agenda – Introduce the tool – Record a script – Edit the script – Randomization – Define a test with more then one or more scripts – Execute a benchmark run – Validate the run
  • 3. What is WebStress • A utility being shipped as part of the product in 2011 • A tool that allows for recording http traffic between any client and server that supports running thru a proxy • Allows for customizing and randomizing the data being utilizied from a given recorded base script • Can play back multiple recordings simultaneously to simulate load and verify results, including performance metrics
  • 4. Why WebStress? • TrakCare performance evaluations required for certain bids – Brisbane – Edinburgh • LoadRunner and other tools for this can be very expensive • Managing CSP / Zen based applications requires a few little tricks to benchmark correctly • Has been used in dozens of benchmarks since 2002
  • 5. Some core concepts • Controller – Manages the playback of a test and gathers results • Generator – Machine that is executing the script and randomization logic during playback. Can be same machine as controller • WebServer – The URL that the application is running over. In the case of a Cache system it also allows us to connect to the server • App Server – The actual database being used by the test under Cache
  • 6. Continued • NoEncrypt Flag – Sets the flag that allows benchmark recordings and playback to work on CSP / Zen based solutions • No Delay – For non page content ignore recorded delays – js, html, css, jpg etc • No Results – For non page content ignore results – js, html, css, jpg simulates cacheing
  • 7. Continued • Scripts – A collection of http requests that from a UI perspective represent a “transaction” or “workflow” • Tests – A collection of scripts that when combined represent a “server usage profile” • Save Page Source – For verification purposes this will loop over a script and save the returned page content to a local directory
  • 8. Recording • WebStress has a facility that launches a listener on a defined port • A browser for example can be configured to use this port as a proxy and we capture the output • We will offer to set the no encrypt flag for a given cache service when the listener is launched • The recorder also generates a routine for providing randomization logic • Exercise 1
  • 9. Customizing a Script • Once a recording is completed we can edit it to change settings and values or completely randomize data being used – Parameters • These are name value pairs that were submitted via http – Http Headers • This is the information your browser added to the http request when it was POSTed or GET – URLs • These are the individual http requests captured. They can be removed or manually added • Exercise 2
  • 10. Creating a Test • Controls the playback of the various scripts – Scheduled – Start now – Run time – Warm up / Cool down – Using Delays – Page Source
  • 11. Tests Continued • Adding Scripts – Select a script – Choose a Web Server – Define the rate • Sessions • Processes – URL Loopback – Target • Repeat as needed
  • 12. Tests Continued • Adding Scripts – Select a script – Choose a Web Server – Define the rate • Sessions • Processes – URL Loopback – Target • Repeat as needed • Exercise 3
  • 13. Running a Benchmark • Preparing a Test – Starts the processes on the Generator – Starts the controller’s listener that drives the generators and collects the data • Run the Test – The Controller sends the start signal to the generators – Results are ignored for the duration of the “warm up” – Live results display on this page • After the test – Results are processed – Jobs Halted
  • 14. Running a Benchmark - Cont • While the test is running you will see information on the current Rates Per Minute. These are color coded to indicate how close to your target for a given script you are doing. • If you need to you can stop a test, adjust the settings for the Sessions and Processes and rerun the test again to aim closer to target
  • 16. Debug Mode • You have the option to run a script and have the returned pages be stored to disk. This is very handy for debugging a script and validating that things are performing correctly. • To do this we specify the Source Directory and the Save Page Source options in the test settings. • This creates a structure at that location that represents each script, and each time we looped thru the URLs
  • 18. WebStress Summary • Runs on 2011.1 • Can be used against any http based application • Https not supported at this time • Keep Alive must be disabled during recording
  • 19. WebStress Academy • Thank you • Bill McCormick - bill.mccormick@intersystems.com • Pat McGibbon - pat.mcgibbon@intersystems.com • Iain Bray - Lead developer