SlideShare a Scribd company logo
1 of 12
Wydajność aplikacji Web z perspektywy użytkownika
Agenda
 Testy z wykorzystaniem narzędzi takich jak Jmeter, SoapUI, Grinder, Gatling itp.
 Testy syntetyczne z wykorzystaniem przeglądarki
 Real User Measurements
Pomiary z wykorzystaniem aplikacji Jmeter, Gatling itp
 Pozwalają mierzyć czasy odpowiedzi elementów serwisu www
 Pobranie dokumentu HTML
 Wywołanie zapytania do API
 Niezastąpione przy generowaniu obciążenia
 Pozwalają ocenić zmiany czasów w odpowiedzi na zwiększoną liczbę równoległych
użytkowników
 Nie dają informacji o wydajności strony widzianej z perspektywy użytkowników
Środowisko
 Czas pobieranie obrazka (6kB) korzystając z narzędzia curl (1 wątek)
0
1
2
3
4
5
6
7
8
9
10
0 200 400 600 800 1000 1200
0
1
2
3
4
5
6
7
8
9
10
-1000 1000 3000 5000 7000 9000
W czasie dnia (15:30 – 17:00) W nocy (18:00-6:00)
Konsekwencje niestabilnego środowiska
 Czas pobierania krytycznego zasobu może być wydłużony poprzez problemy
sieciowe
Pomiary syntetyczne z wykorzystaniem przeglądarki
 Pomiary z wykorzystaniem przeglądarki w znanym (referencyjnym) środowisku
 Określone warunki
 Jakie łącze
 Jaki dostawca usługi
 Jaką przeglądarką
 Jaka wiele metryk
 Czas pobieranie dokumentu HTML
 Zdarzenia Java Script
 PageIndex, SpeedIndex
 Własna metryka, zobacz https://www.youtube.com/watch?v=f5_iAzS3WMQ
High Performance Web Sites Rules
 Minimize HTTP Requests
 Use a Content Delivery Network
 Avoid empty src or href
 Add an Expires or a Cache-
Control Header
 Gzip Components
 Put StyleSheets at the Top
 Put Scripts at the Bottom
 Avoid CSS Expressions
 Make JavaScript and CSS
External
 Reduce DNS Lookups
 Minify JavaScript and CSS
 Avoid Redirects
 Remove Duplicate Scripts
 Configure ETags
 Make AJAX Cacheable
 Use GET for AJAX Requests
 Reduce the Number of DOM
Elements
 No 404s
 Reduce Cookie Size
 Use Cookie-Free Domains for
Components
 Avoid Filters
 Do Not Scale Images in HTML
 Make favicon.ico Small and
Cacheable
Narzędzia
 YSlow (darmowe)
 PageSpeed (darmowe)
 WebPageTest (darmowe)
Pomiary syntetyczne z wykorzystaniem przeglądarki
 Narzędzia
 Selenium + mobProxy/net export (darmowe)
 WebPageTest (darmowe)
 SideSpeed.io (darmowe)
 NewRelic
 Catchpoint
 DynaTrace
 Narzędzia dodatkowe
 ShowSlow (darmowe)
Real User Measurements
 Pomiary czasów odpowiedzi strony przez prawdziwych użytkowników, czyli na
 urządzeniach użytkowników
 ich konfiguracji
 sieci
 Narzędzia:
 Google Analytics
 NewRelic
 mPulse
 Catchpoint
Jakie wymagania
 From the The Art of Application Performance Testing (after Martin 1988)
 Greater than 15 seconds
 Greater than 4 seconds
 2 to 4 seconds
 Less than 2 seconds
 Jupiter Research, Retail Web Site Performance: Consumer Reaction to a Poor Online
Shopping Experience, June 2006 and PhoCusWright, Consumer Response to Travel
Site Performance, June 2010
 3 seconds lead to significant decrease in user satisfaction
Dodatkowe informacje
 Heristic Test Strategy Model - www.satisfice.com/tools/htsm.pdf
 Radware Research - http://www.radware.com/Documents/?type=Research
 Steve Souders @Souders
 Ilya Grigorik @igrigorik
 Tammy Everts @tameverts

More Related Content

Similar to Wydajność aplikacji Web z perspektywy użytkownika

Sposoby analizy i interpretacji statystyk strony WWW.
Sposoby analizy i interpretacji statystyk strony WWW.Sposoby analizy i interpretacji statystyk strony WWW.
Sposoby analizy i interpretacji statystyk strony WWW.wysokapozycja.pl
 
Nowy standard pomiaru widowni internetowej w Polsce 2016-20120
Nowy standard pomiaru widowni internetowej w Polsce 2016-20120Nowy standard pomiaru widowni internetowej w Polsce 2016-20120
Nowy standard pomiaru widowni internetowej w Polsce 2016-20120Polish Internet Research
 
Django - webowy framework dla wymagających
Django - webowy framework dla wymagającychDjango - webowy framework dla wymagających
Django - webowy framework dla wymagającychKrzysztof Kreczko
 
Testy funkcjonalne
Testy funkcjonalneTesty funkcjonalne
Testy funkcjonalnePROSKAR
 
Mts 2013 tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...
Mts 2013   tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...Mts 2013   tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...
Mts 2013 tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...Tomasz Kopacz
 
Co nowego w VS 2013 dla programistów ASP.NET?
Co nowego w VS 2013 dla programistów ASP.NET?Co nowego w VS 2013 dla programistów ASP.NET?
Co nowego w VS 2013 dla programistów ASP.NET?Bartlomiej Zass
 
StreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchuStreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchuWlodek Bielski
 
Kochetkov mykyta
Kochetkov mykytaKochetkov mykyta
Kochetkov mykytanikkozp
 
Gdy testy to za mało - Continuous Monitoring
Gdy testy to za mało - Continuous MonitoringGdy testy to za mało - Continuous Monitoring
Gdy testy to za mało - Continuous MonitoringDreamLab
 
[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...
[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...
[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...Future Processing
 
Badanie panelowe internautów w służbie rynku i biznesu, Andrzej Garapich, Sł...
Badanie panelowe internautów w służbie rynku i biznesu,  Andrzej Garapich, Sł...Badanie panelowe internautów w służbie rynku i biznesu,  Andrzej Garapich, Sł...
Badanie panelowe internautów w służbie rynku i biznesu, Andrzej Garapich, Sł...Biznes 2.0
 
090306 Internet W Badaniach
090306  Internet W Badaniach090306  Internet W Badaniach
090306 Internet W Badaniachinternetstats
 
090306 Internet W Badaniach
090306  Internet W Badaniach090306  Internet W Badaniach
090306 Internet W Badaniachguest58fda6ff
 
Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?javOnet
 
Data Driven Testing za pomocą narzędzia Ranorex
Data Driven Testing za pomocą narzędzia RanorexData Driven Testing za pomocą narzędzia Ranorex
Data Driven Testing za pomocą narzędzia Ranorextestuj.pl
 

Similar to Wydajność aplikacji Web z perspektywy użytkownika (20)

Sposoby analizy i interpretacji statystyk strony WWW.
Sposoby analizy i interpretacji statystyk strony WWW.Sposoby analizy i interpretacji statystyk strony WWW.
Sposoby analizy i interpretacji statystyk strony WWW.
 
Nowy standard pomiaru widowni internetowej w Polsce 2016-20120
Nowy standard pomiaru widowni internetowej w Polsce 2016-20120Nowy standard pomiaru widowni internetowej w Polsce 2016-20120
Nowy standard pomiaru widowni internetowej w Polsce 2016-20120
 
Django - webowy framework dla wymagających
Django - webowy framework dla wymagającychDjango - webowy framework dla wymagających
Django - webowy framework dla wymagających
 
Testy funkcjonalne
Testy funkcjonalneTesty funkcjonalne
Testy funkcjonalne
 
WarszawQA_#9
WarszawQA_#9WarszawQA_#9
WarszawQA_#9
 
Mts 2013 tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...
Mts 2013   tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...Mts 2013   tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...
Mts 2013 tomasz kopacz - wydajność aplikacji dla windows 8 - jak ją mierzyć...
 
Co nowego w VS 2013 dla programistów ASP.NET?
Co nowego w VS 2013 dla programistów ASP.NET?Co nowego w VS 2013 dla programistów ASP.NET?
Co nowego w VS 2013 dla programistów ASP.NET?
 
3
33
3
 
StreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchuStreamInsight - Analiza danych w ruchu
StreamInsight - Analiza danych w ruchu
 
Kochetkov mykyta
Kochetkov mykytaKochetkov mykyta
Kochetkov mykyta
 
Wydajny frontend 2023
Wydajny frontend 2023Wydajny frontend 2023
Wydajny frontend 2023
 
Gdy testy to za mało - Continuous Monitoring
Gdy testy to za mało - Continuous MonitoringGdy testy to za mało - Continuous Monitoring
Gdy testy to za mało - Continuous Monitoring
 
[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...
[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...
[Quality Meetup #13] Piotr Marczydło - Gdy testy to za mało – Continuous Moni...
 
Badanie panelowe internautów w służbie rynku i biznesu, Andrzej Garapich, Sł...
Badanie panelowe internautów w służbie rynku i biznesu,  Andrzej Garapich, Sł...Badanie panelowe internautów w służbie rynku i biznesu,  Andrzej Garapich, Sł...
Badanie panelowe internautów w służbie rynku i biznesu, Andrzej Garapich, Sł...
 
090306 Internet W Badaniach
090306  Internet W Badaniach090306  Internet W Badaniach
090306 Internet W Badaniach
 
090306 Internet W Badaniach
090306  Internet W Badaniach090306  Internet W Badaniach
090306 Internet W Badaniach
 
Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?Jak podwoić wartość kodu .NET?
Jak podwoić wartość kodu .NET?
 
Data Driven Testing za pomocą narzędzia Ranorex
Data Driven Testing za pomocą narzędzia RanorexData Driven Testing za pomocą narzędzia Ranorex
Data Driven Testing za pomocą narzędzia Ranorex
 
DSP Forecasting wdi
DSP Forecasting wdiDSP Forecasting wdi
DSP Forecasting wdi
 
AppSec a SaaS, case study
AppSec a SaaS, case studyAppSec a SaaS, case study
AppSec a SaaS, case study
 

Wydajność aplikacji Web z perspektywy użytkownika

  • 1. Wydajność aplikacji Web z perspektywy użytkownika
  • 2. Agenda  Testy z wykorzystaniem narzędzi takich jak Jmeter, SoapUI, Grinder, Gatling itp.  Testy syntetyczne z wykorzystaniem przeglądarki  Real User Measurements
  • 3. Pomiary z wykorzystaniem aplikacji Jmeter, Gatling itp  Pozwalają mierzyć czasy odpowiedzi elementów serwisu www  Pobranie dokumentu HTML  Wywołanie zapytania do API  Niezastąpione przy generowaniu obciążenia  Pozwalają ocenić zmiany czasów w odpowiedzi na zwiększoną liczbę równoległych użytkowników  Nie dają informacji o wydajności strony widzianej z perspektywy użytkowników
  • 4. Środowisko  Czas pobieranie obrazka (6kB) korzystając z narzędzia curl (1 wątek) 0 1 2 3 4 5 6 7 8 9 10 0 200 400 600 800 1000 1200 0 1 2 3 4 5 6 7 8 9 10 -1000 1000 3000 5000 7000 9000 W czasie dnia (15:30 – 17:00) W nocy (18:00-6:00)
  • 5. Konsekwencje niestabilnego środowiska  Czas pobierania krytycznego zasobu może być wydłużony poprzez problemy sieciowe
  • 6. Pomiary syntetyczne z wykorzystaniem przeglądarki  Pomiary z wykorzystaniem przeglądarki w znanym (referencyjnym) środowisku  Określone warunki  Jakie łącze  Jaki dostawca usługi  Jaką przeglądarką  Jaka wiele metryk  Czas pobieranie dokumentu HTML  Zdarzenia Java Script  PageIndex, SpeedIndex  Własna metryka, zobacz https://www.youtube.com/watch?v=f5_iAzS3WMQ
  • 7. High Performance Web Sites Rules  Minimize HTTP Requests  Use a Content Delivery Network  Avoid empty src or href  Add an Expires or a Cache- Control Header  Gzip Components  Put StyleSheets at the Top  Put Scripts at the Bottom  Avoid CSS Expressions  Make JavaScript and CSS External  Reduce DNS Lookups  Minify JavaScript and CSS  Avoid Redirects  Remove Duplicate Scripts  Configure ETags  Make AJAX Cacheable  Use GET for AJAX Requests  Reduce the Number of DOM Elements  No 404s  Reduce Cookie Size  Use Cookie-Free Domains for Components  Avoid Filters  Do Not Scale Images in HTML  Make favicon.ico Small and Cacheable
  • 8. Narzędzia  YSlow (darmowe)  PageSpeed (darmowe)  WebPageTest (darmowe)
  • 9. Pomiary syntetyczne z wykorzystaniem przeglądarki  Narzędzia  Selenium + mobProxy/net export (darmowe)  WebPageTest (darmowe)  SideSpeed.io (darmowe)  NewRelic  Catchpoint  DynaTrace  Narzędzia dodatkowe  ShowSlow (darmowe)
  • 10. Real User Measurements  Pomiary czasów odpowiedzi strony przez prawdziwych użytkowników, czyli na  urządzeniach użytkowników  ich konfiguracji  sieci  Narzędzia:  Google Analytics  NewRelic  mPulse  Catchpoint
  • 11. Jakie wymagania  From the The Art of Application Performance Testing (after Martin 1988)  Greater than 15 seconds  Greater than 4 seconds  2 to 4 seconds  Less than 2 seconds  Jupiter Research, Retail Web Site Performance: Consumer Reaction to a Poor Online Shopping Experience, June 2006 and PhoCusWright, Consumer Response to Travel Site Performance, June 2010  3 seconds lead to significant decrease in user satisfaction
  • 12. Dodatkowe informacje  Heristic Test Strategy Model - www.satisfice.com/tools/htsm.pdf  Radware Research - http://www.radware.com/Documents/?type=Research  Steve Souders @Souders  Ilya Grigorik @igrigorik  Tammy Everts @tameverts

Editor's Notes

  1. (http://web.archive.org/web/20150405114023/http://ie.microsoft.com/testdrive/HTML5/DOMContentLoaded/Default.html)