Web performance workshop
26. september 2013
Monitorering
Hvordan kommer jeg godt fra start med web
performance
Tobias Borg Petersen,
Performancekonsulent fra Digicure A/S
www.digicure.dk
Hvem er jeg
Tobias Borg Petersen
2
@_tobibp
tbp@digicure.dk
Webperformance.nu/blog
Performancekonsulent i Digicure
Front End udvikler (.NET)
dk.linkedin.com/in/tobiasbp
www.digicure.dk
3
• Stiftet i 2003
• 20 medarbejdere
• Beskæftiger os med analyse og rådgivning
• It-sikkerhed
• Web performance
• It-sikkerhedsuddannelser
• CISSP
• CEH – Ethical hacker
• CVSE – Vmware Hacking / Advanced Security
Disposition
Tobias Borg Petersen
4
• Hvorfor er web performance vigtigt?
• Hvad er brugernes forventninger til svartider?
• Søgeoptimering og lange svartider
• Opsætning af KPI’er
• Hvordan laver jeg en SLA for performance?
• Når forretningen bliver global – CDN
• Hvor skal jeg fokusere min optimeringer?
• Forskellige typer af testværktøjer
• Web performance optimering som en løbende proces
WORKSHOP
• instant@larm workshop – Hvad kan instant@larm
hjælpe til med?
5
Fokus på web performance
Fordi det kan betale sig
Og fordi man har ikke råd til at lade være
7
Fokus på web performance
• Hurtigere, hurtigere og hurtigere
• Internet forbindelser bliver hurtigere
• Computere bliver hurtigere
• Telefonerne bliver hurtigere
• Browserne bliver hurtigere
• Styresystemer bliver hurtigere
• Næsten alt bliver hurtigere
• Og brugerne bliver mere og mere utålmodige
15
20 %
.. mindre trafik blot ved at øge svartiden med
500 ms.
Web performance – Hvorfor?
Lavere bruger engagement
16
Kilde: http://blog.kissmetrics.com/loading-time/
• 47 % af de adspurgte
brugere forventer at et
website er vist indenfor 2
sekunder
• 40 % af de adspurgte
brugere vil forlade et
website der er mere end
3 sekunder om at blive vist
• 52 % af de adspurgte
brugere mener at hurtige
sidevisninger er vigtigt for
websites loyalitet
Web performance – Hvorfor?
Lavere bruger engagement
17
• 3 ud af 4 online shoppere
bliver stressede og
irriterede ifm. handel på et
langsomt website
• 1 ud af 5 af dem der før
har forladt en
indkøbskurv, var pga. et
langsomt website
Kilde: http://blog.kissmetrics.com/loading-time/
Web performance – Hvorfor?
Lavere bruger engagement
19
• Reducerede svartider med mellem 50-70 %
• Reducerede båndbredde forbruget med 43 %
• Reducerede DB CPU forbrug med 75 %
• Øgede maks. antallet af samtidige brugere med 300 %
Kilde: http://www.nccgroup.com/media/19242/seatwave_our_optimisation_story.pdf
Web performance – Hvorfor?
Tekniske gevinster
22
‘Google suggests that any site taking longer than 1.5
seconds to load is ‘slow’ and will consequently be
relegated within their search engine ranking’
Kilde: http://www.qubitproducts.com/wp-content/uploads/2012/04/Site-Speed-
Whitepaper1.pdf
Web performance – Hvorfor?
Search Engine Optimization (SEO)
23
Web performance – Hvorfor?
Search Engine Optimization (SEO)
‘Google Recommends Mobile Websites Load in
One Second or Less’
Nu også på
mobile websites
Kilde: http://www.cmswire.com/cms/customer-experience/google-recommends-mobile-websites-load-in-
one-second-or-less-022080.php
27
Båndbredde og svartider
• Båndredde og latency
• Båndbredde indikerer ‘tykkelsen’
• Latency indikerer transporttiden
• Transporttiden fra A til B = Latency
30
Båndbredde og svartider
Kilde: http://www.igvita.com/2012/07/19/latency-the-new-web-performance-bottleneck/
• Lysets hastighed er en begrænsning
• Læg kortere kabler
• 450 millioner kroner per sparet ms.
• Løsning: Flyt indholdet tættere på og
reducér antallet af forespørgsler
32
John Kemeny &
Thomas Kurtz
”We found, that any response time that
averages more than 10 seconds, destroys the
illusion of having one’s own computer”
1960’erne
Kilde: http://www.nytimes.com/2012/03/01/technology/impatient-web-users-flee-
slow-loading-sites.html?pagewanted=all&_r=0
De besøgendes forventninger
33
Forrester
Research
2006 = 4 sekunder
2006 og 2009 2009 = 2 sekunder
Kilde: http://www.getelastic.com/performance/
De besøgendes forventninger
Kilde: http://www.akamai.com/html/about/press/releases/2009/press_091409.html
34
• Simple brugerinputs skal være besvaret inden 100 ms.
• For at engagere brugeren, skal en opgave udføres
inden for 1 sekund
Kilde: http://www.nytimes.com/2012/03/01/technology/impatient-web-users-flee-
slow-loading-sites.html?pagewanted=all&_r=0
Forsinkelse Brugerens reaktion
0 – 100 ms. Instant/øjebklikkelig
100 – 300 ms. En mindre forsinkelse
300 – 1000 ms. Fortsat fokus på opgave
1 sek. + Mental fokus forsvinder
10 sek. + ”Jeg kommer tilbage
senere..” – hvis det sker
De besøgendes forventninger
36
Hvis dit website er længere end
1 sekund om at blive vist,
taber du allerede besøgende nu
De besøgendes forventninger
37
Performance er en fundamental del af
brugeroplevelsen på websitet!
Brugeroplevelsen
De besøgendes forventninger
Højere krav
til performance
38
”Facebook sucks!”
• Intuitive navigering
• Timelines elegance
• Svartiden!
De besøgendes forventninger
Brugeroplevelsen
Højere krav
til performance
39
Performance
is about respect
”Respect your user’s time and they will be
more likely to walk away with a positive
experience.”
Brat Frost
Kilde: http://bradfrostweb.com/blog/post/performance-as-design/
De besøgendes forventninger
45
Marketing og salg:
- Øget aktivitet
på websitet
• Længere besøgstid
• Bedre søgerangering
• Øget konverteringsrater
• Øget antal sidevisninger
• Lavere bounce rate
• Større brugertilfredshed!
Hvordan kommer man godt fra start
46
Økonomi folkene:
- Lavere drift
omkostninger!
Hvordan kommer man godt fra start
• Reduceret båndbreddeforbrug
• Reduceret behov for server kraft
• Reduceret strømforbrug
• Reduceret CO2 udledning
48
Du bruger allerede penge
på din tilstedelseværelse på
Internettet
Hvordan kommer man godt fra start
• Website design og udvikling
• Vedligeholdelsesomkostninger
• Driftsomkostninger
• Marketing
• eCommerce software
Performance optimering
øger ROI for alle punkter!
52
• Konverteringsrater
• Køb af varer, tilmeldelse til nyhedsbreve
• Sidevisninger
• Antal sidevisninger per minut en bruger genererer
• Besøgstid på website
• Tiden brugerne tilbringer på websitet
• Bounce rate
• Hvor mange brugere hopper fra
• Tilgængelighed
• Nedetider hvor websitet ikke er tilgængeligt
• Svartider
• Hvor hurtigt får brugerne vist sidevisningerne
Hvordan kommer man godt fra start
55
Sådan laver du en SLA for
performance niveauet – 1/4
• Klar og tydelig
• X : Websitet skal være hurtigt”
• X : Websites forside skal være hentet inden for 2 sekunder
• ✔: Websites forside skal være hentet inden for 2
sekunder, målt fra Danmark. Målingerne skal foretages i
tidsrummet 08:00 – 16:00
• Vær’ realistisk
• Hvis websitet er 8 sekunder om at blive hentet, skal kravet ikke
være 3 sekunder.
• Benchmark imod konkurrenter
• Digicure Performance Index (DPI)
56
Sådan laver du en SLA for
performance niveauet – 2/4
• Hvilke sider er en del af SLA’en?
• Forside, produktside, checkout-flow, kontaktside, søgning
• Udvælg performance metrics
• Connection time
• Download time
• Oppetid
• Udvælg lokationer hvorfra målingerne skal foretages
• Lokalt og/eller globalt?
• Hvad er dine brugeres forventninger?
• Brugerundersøgelse
• Vælg browsertype
• Mobil
• Desktop
57
Sådan laver du en SLA for
performance niveauet – 3/4
Eksempel Service Level Agreement (SLA)
Webside: Forsiden af www.eksempel.dk
Lokationer: Danmark, USA og Australien
Browsertype: Desktop – Internet Explorer 9
Værktøj: instant@larm
Gennemsnitlig svartider: 2,41 sek. (DPI over automobiler, juni 2012)
Krav til svartid:
2 sek. (Danmark), 4 sek. (USA), 5 sek. (Australien)
Krav til oppetid:
99,98 % (Danmark, USA og Australien)
58
Sådan laver du en SLA for
performance niveauet – 4/4
• SMART – Specific, Measureable, Attainable, Realistic and Time bound
• Revurdér en SLA løbende
• Monitorér dine konkurrenter
• Foretag løbende brugerundersøgelser
• Sørg for at monitorere performance niveauet – Også selvom det ser
godt ud!
• Gør brugerne opmærksomme på at der arbejdes hen imod højt
performance niveau
61
• Smart-route teknologi
• Komponenter placeret
geografisk tættere på
brugeren
• Typisk statiske
Fordele:
• Reducering af trafik
• Større skalérbarhed
Når forretningen bliver global
62
Hvordan vælger jeg den
rette CDN udbyder?
Få styr på dit behov!
• Hvilke fil formater skal du have
hosted?
• Hvor kommer dine brugere fra?
(geografiske lokationer)
• Hvad er trafikken på nuværende
tidspunkt?
• Hvad forventer man af fremtidig
trafik?
Og ikke mindst..
• Lyt ikke til rygter! CDN er stadig
en forholdsvis ny teknologi
Når forretningen bliver global
63
Spørgsmål til
udbyderen
• Supporteres de nødvendige fil
formater?
• Hvor er datacentrene geografisk
placeret?
• Hvordan bliver man faktureret?
• Er der en SLA for performance?
• Oppetid
• Netværk og server
• Svartider
• Fra flere geografiske
lokationer
• Kompentation
• Ikke kun pr. minuts nedetid
Når forretningen bliver global
70
“80-90% of the end-user response time is spent on the frontend.
Start there.” – Steve Sourders, Google
20 % BE = Time To First byte (TTFB)
• Database opslag
• Web service kald
• HTML generering
80% FE = Download af indholdet:
• Billeder
• CSS
• Scripts
• Flash
Kilde: http://www.stevesouders.com/blog/2012/02/10/the-performance-golden-rule/
Hvor skal jeg fokusere mine
optimeringer?
• Reducering af antal HTTP forespørgsler
• Reducering af website indholdet
Hvor skal jeg fokusere mine
optimeringer?
77
For meget indhold
Tungt indhold som ikke
er komprimeret korrekt
Server konfigurationer
Spidsbelastninger med
høj trafik
Netværks latency
3. part komponenter
Hvad er årsagen til dårlig
web performance?
84
• Svartider
• Tilgængelighed
• IKKE ping
• Brugernes oplevelse udefra
• 3. part monitorering
Monitorering
Testværktøjer – Web performance
85
• Load test
• Hvor meget kan websitet
holde til
• Stress test
• Hvor meget kan websitet
holde til under en stor
belastning
• Endurance test
• Hvordan opfører websitet
sig under en længere
vedvarende belastning
Performancetest
Testværktøjer – Web performance
90
Gratis seminar
- Hvad kan jeg gøre for at få hurtigere svartider på
mit website?
Oktober 2013
- Desktop Optimering
November 2013
- Mobil optimering
www.digicure.dk
Tak for i dag!
Tobias Borg Petersen,
mail: tbp@digicure.dk
www: digicure.dk
Notes de l'éditeur
Når man ser på alle dem som understøtter og er med til at skabe fundamentet for at vi overhovedet har adgang til informationer på nettet er der en ting der går igen
HASTIGHED
http://www.nytimes.com/2012/03/01/technology/impatient-web-users-flee-slow-loading-sites.html?pagewanted=all&_r=0
invented the BASIC programming language
http://www.nytimes.com/2012/03/01/technology/impatient-web-users-flee-slow-loading-sites.html?pagewanted=all&_r=0
invented the BASIC programming language
Responsive Web Design
Internettet kan tilgås og interageres på op til flere forskellige enheder
PC’er, mobiltelefoner, tablets
Internettets evner til at blive tilgået på flere typer og hastigheder af netværk
Båndbredde, latency, mobil netværk, osv.
Web performance har stor betydning for brugeroplevelse
Cases som KISSMetrics, GlassesDirect og Seatwave
Responsive Web Design
Internettet kan tilgås og interageres på op til flere forskellige enheder
PC’er, mobiltelefoner, tablets
Internettets evner til at blive tilgået på flere typer og hastigheder af netværk
Båndbredde, latency, mobil netværk, osv.
Web performance har stor betydning for brugeroplevelse
Cases som KISSMetrics, GlassesDirect og Seatwave
http://www.nytimes.com/2012/03/01/technology/impatient-web-users-flee-slow-loading-sites.html?pagewanted=all&_r=0
invented the BASIC programming language
Længere besøgstid
Bedre søgerangering
Øget konverteringsrater
Øget antal sidevisninger
Lavere bounce rate
Større brugertilfredshed!
Konverteringsrater
Køb af varer, tilmeldelse til nyhedsbreve
Sidevisninger
Antal sidevisninger per minut en brugerne besøger
Besøgstid på website
Tiden brugerne tilbringer på websitet
Bounce rate
Hvor mange brugere hopper fra
Tilgængelighed
Nedetider hvor websitet ikke er tilgængeligt
Svartider
Hvor hurtigt får brugerne vist sidevisningerne
Tager tid
Belaster webserveren
Større chancer for længere forespørglser
ISÆR mobile enheder er et problem
Minimér latency
Indholdet der skal transmitteres skal nedsættes
Båndbredde forbindelser varierer meget
ISÆR mobile
Fjern unødvendig data slutbruger ikke kan bruge til noget
Content
Web redaktører, ecommerce managers
Application
Webbureauer, udviklingshuse, in-house development
Infrastructure
Hosting partner, webhotel, driftfolk
Content
Web redaktører, ecommerce managers
Application
Webbureauer, udviklingshuse, in-house development
Infrastructure
Hosting partner, webhotel, driftfolk
Content
Web redaktører, ecommerce managers
Application
Webbureauer, udviklingshuse, in-house development
Infrastructure
Hosting partner, webhotel, driftfolk
Content
Web redaktører, ecommerce managers
Application
Webbureauer, udviklingshuse, in-house development
Infrastructure
Hosting partner, webhotel, driftfolk
Svartider
Tilgængelighed
IKKE ping
Brugernes oplevelse udefra
3. part monitorering