wydajność aplikacji web z perspektywy użytkownika
TRANSCRIPT
![Page 1: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/1.jpg)
Wydajność aplikacji Web z perspektywy użytkownika
![Page 2: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/2.jpg)
Agenda
Testy z wykorzystaniem narzędzi takich jak Jmeter, SoapUI, Grinder, Gatling itp. Testy syntetyczne z wykorzystaniem przeglądarki Real User Measurements
![Page 3: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/3.jpg)
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
![Page 4: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/4.jpg)
Środowisko
Czas pobieranie obrazka (6kB) korzystając z narzędzia curl (1 wątek)
0 200 400 600 800 1000 12000
1
2
3
4
5
6
7
8
9
10
0 1000 2000 3000 4000 5000 6000 7000 8000 90000
0.5
1
1.5
2
2.5
3
3.5
W czasie dnia (15:30 – 17:00) W nocy (18:00-6:00)
![Page 5: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/5.jpg)
Konsekwencje niestabilnego środowiska
Czas pobierania krytycznego zasobu może być wydłużony poprzez problemy sieciowe
![Page 6: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/6.jpg)
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
![Page 7: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/7.jpg)
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
![Page 8: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/8.jpg)
Narzędzia
YSlow (darmowe) PageSpeed (darmowe) WebPageTest (darmowe)
![Page 9: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/9.jpg)
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)
![Page 10: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/10.jpg)
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
![Page 11: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/11.jpg)
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
![Page 12: Wydajność aplikacji Web z perspektywy użytkownika](https://reader035.vdocuments.pub/reader035/viewer/2022062901/58f290111a28ab35088b457d/html5/thumbnails/12.jpg)
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