SlideShare ist ein Scribd-Unternehmen logo
1 von 24
2014 TBC-World 1
Unravelling
Web Performance Internals
2014 TBC-World 2
 Internet is built with
trust in mind
between nodes
 Scalable
Decentralized
Architecture, open to
add remove any
number of nodes
 IP Addresses,
Protocols
SOME BASICS
ON INTERNET!
2014 TBC-World 3
LATENCY: DISTANCE,
ROUTE/TRAFFIC,PACKET LOSS LAST
MILE
2014 TBC-World 4
Web Performance
Matters
Foundation of “User
Experience”
Web performance
is widely
mis-understood!
TIME(SPEED)
IS MONEY!
2014 TBC-World 5
PERCIEVED
EXP.
VS REAL
PERF.
 If measured objectively, both
site would have looked to have
taken same amount of time to
Load.
 But, perceived performance has
a lot to do with when is the
“Document Ready”
 Sometimes, all that requires is
“Perceived Experience” than
real performance numbers!
E.g. Effect on a Button Click
2014 TBC-World 6
2014 TBC-World 7
 Hundreds of files to load in a Web Address
 Sometimes more than a Megabyte to
download
 Developer Errors
 HTTP 1.1 is not that great
 100s of resources, Render blocking scripts,
DNS resolutions, Multiple downloads,
Bandwidth, Latency
 Not clear priority on critical performance
areas
USERS ARE NOT
READY TO WAIT!
2014 TBC-World 8
LET US GO
UNDER THE
HOOD
 Your Computer: Client /
Browser
 Sea of Servers, Cloud
 DNS (Resolving NS, Root
NS, TLD NS,
Authoritative NS)
 IP Address, TCP
Handshake
 Network
 HTTP Request, HTTP
Response
 Binary data, Encode
 HTML (metadata, body)
 SESSION
 CSS,JS,AJAX/XML HTTP
REQUESTS
2014 TBC-World 9
A WEB ADDRESS
 Amazon’s target in major US Cities
• <200 ms to First Byte (TTFB)
• <500 ms to Above the Fold content
• <2000 ms to complete a page load
2014 TBC-World 10
What a Desktop/Mobile
Browser is expected to
do at the Blink of an
EYE!
2014 TBC-World 11
HTTP REQUEST AND RESPONSE
 HTML DOM
 CSS
 Images
 JS 
2014 TBC-World 12
IMPORTANT
TO
IMPROVE
WEB PERF.
Image Source: Radware
Bringing it from 16+ sec to 7-8 sec is the
easier part
•Bringing it under 4 sec is the real
challenge
•Easy to blame Hardware – but that may
not be the issue
Mature Optimization is the key
2014 TBC-World 13
 Round Trip Time,
Response Time
 Throughput
 Latency
 Load Time, time to
First Byte
 Payload
 DNS Lookup times
 End user
Experience on Real
Browsers
 Type of Payload
 Level of Caching
 On Load
Performance
 Web Perf. on Phone,
Web, Tab, Desktop
 GTMetrix.com, Webpagetest.org, Pingdom
 YSlow, Google Page Speed test
 Device Simulators
 Grinder, jMeter, Load Runner: Performance under stress/load
 Google Analytics (For real PROD numbers )
How to Measure and Analyze?
What to Measure?
2014 TBC-World 14
BUT, DO WE
KNOW HOW
TO
INTERPRET
RESULTS?
2014 TBC-World 15
WHAT COULD BE
WRONG?  Test conditions
 # of Resources to
Load and Type of
resources
 Ordering of
Resources
 Trouble maker
resources -HTTP
Statuses
 Too late to paint?
 Lack of Caching?
 Too many connections to
same host?
 Large Time to First Byte?
 Too many plugins?
 Total Payload, Too many
images?
 Pages landing to naked
domain or www?
2014 TBC-World 16
COMPARE
 Payload
 Grade
 #of Requests
 Caching
 Other params
2014 TBC-World 17
REAL
WORLD
PERF.
 Beware of
Averages
 Performance
of all Pages
and not just
Home page or
few pages
 Beware of
route
congestions
on specific
routes on
specific
days/time
2014 TBC-World 18
PERF.
WHEN
STRESSED
 Find the max
throughput
under a
reasonable
Response time
variance
 Repeat Load
Tests with
several perf
tuning steps
including HW
spec changes
2014 TBC-World 19
WPO (WEB PERFORMANCE
OPTIMISATION) FACTORS
 Locations of the Client Browser
 Server Location, CDN Edge locations
 Bandwidth, Type of Connectivity (2G,
3G, 4G, DSL, Fiber, Cable)
 Type of Browser – some browsers are
Smarter
 Client and Server Config, Scale
horizontal, Scale Vertical Cloud, PAAS
or IAAS Cloud
 One size fits all Language frameworks,
CMS Frameworks, e-COM Frameworks,
jQuery Libraries, Boiler plate templates
could impact perf.
 Payload of the page
 ISPs, Traffic en-Route
 # of Trans/Load on the
server
 Web Stack: OS, Web
Server, Relational DB
Servers, Programming
Lang, No SQL Databases
 JSON vs XML
 Async, Lazy Loading
 Responsive vs Device
Type Specific
2014 TBC-World 20
DEEP INTO WPO FACTORS
 Front End Optimization
 Sprites, Compression
 Static/Dynamic Page Caching
 Bundling
 File Minification
 Domain Sharding
 Browser Caching
 Image Optimization,
Progressive jPEG
 Defer JS parsing
 DB Caching and Indexing
 Efficient Code
 SSD Drives, IOPS optimized
Drives
 DDOS counters, Defenders
 HTTP1.1,HTTPS, SPDY,
HTTP2
 All the Fancy Scripts
(Analytics, Effects, Social
share scripts etc..)
 LESSER CNAMEs
 HTTP Failure Statuses
2014 TBC-World 21
 Understand the need – A sub 4 sec load time may not be
what all customers are looking for.
 If sub 4 sec load is required, check if it is required in all
pages – get Clarity
 Get the “Buy-in” for agreed numbers from all
stakeholders
 Do not let the perf measurement and tuning be the
first casuality in the rush to the reduce time to
market(TTM), and while shipping a minimum viable
product (MVP)
ACTION STEPS
2014 TBC-World 22
 Build it Right, Deploy it right:
 Follow best practices. Everyone must be aware: Do share perf tips
learned here with your team!
 Eliminate 404 and un-necessary redirects
 Reduce # of images, Optimize images, Compress, Minimize payload,
bundle
 Cache it right, Use CDN, Avoid too many hosts but not too less too.
 Interpret Page test results correctly and take action
 Write Quality code – High Performance code
 Put Special Focus on Front-End, a typical problem area
 Identify critical screens, too much focus on home page can backfire
ACTION STEPS
2014 TBC-World 23
 Benchmark/Optimize/Automate:
 Conduct User Experience Studies. Conduct Perf. tests
on load and otherwise
 Benchmark/Optimize: Make Page speed test (Use Yslow
or Google speed test) part of regular sprint test. If
possible, automate it right into continuous integration
scripts , where possible.
 Consider Deployment of Dynamic Site Acceleration
Solutions like Akamai/YOTTA when demands are for sub
3 sec page load, across geographies
ACTION STEPS
2014 TBC-World 24
My Coordinates: linkedin.com/in/sreejeshkm
http://www.slideshare.net/sreejeshkm
THANK YOU
Image Sources: Radware, Akamaii,

Weitere ähnliche Inhalte

Was ist angesagt?

Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performanceSagar Desarda
 
Delivering Optimal Images for Phones and Tablets on the Modern Web
Delivering Optimal Images for Phones and Tablets on the Modern WebDelivering Optimal Images for Phones and Tablets on the Modern Web
Delivering Optimal Images for Phones and Tablets on the Modern WebJoshua Marantz
 
Making Facebook Faster
Making Facebook FasterMaking Facebook Faster
Making Facebook Fasterguest1240e7c
 
Keys To World-Class Retail Web Performance - Expert tips for holiday web read...
Keys To World-Class Retail Web Performance - Expert tips for holiday web read...Keys To World-Class Retail Web Performance - Expert tips for holiday web read...
Keys To World-Class Retail Web Performance - Expert tips for holiday web read...SOASTA
 
Veda Williams Project Management Secrets A Disciplined Approach To Develo...
Veda Williams   Project Management Secrets   A Disciplined Approach To Develo...Veda Williams   Project Management Secrets   A Disciplined Approach To Develo...
Veda Williams Project Management Secrets A Disciplined Approach To Develo...Vincenzo Barone
 
WordCamp RVA 2011 - Performance & Tuning
WordCamp RVA 2011 - Performance & TuningWordCamp RVA 2011 - Performance & Tuning
WordCamp RVA 2011 - Performance & TuningTimothy Wood
 
Velocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in MillisecondsVelocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in MillisecondsCliff Crocker
 
Magento performance & optimisation best practices
Magento performance & optimisation best practicesMagento performance & optimisation best practices
Magento performance & optimisation best practicesPhilippe Humeau
 
Measuring performance - Velocity 2016 Training
Measuring performance - Velocity 2016 TrainingMeasuring performance - Velocity 2016 Training
Measuring performance - Velocity 2016 TrainingPatrick Meenan
 
Seatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudySeatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudyStephen Thair
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for ScalabilityTuenti
 
O'Reilly Software Architecture Conf: Cloud Economics
O'Reilly Software Architecture Conf: Cloud EconomicsO'Reilly Software Architecture Conf: Cloud Economics
O'Reilly Software Architecture Conf: Cloud EconomicsChris Bailey
 
Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost DevConFu
 
Fundamentals of TempDB
Fundamentals of TempDBFundamentals of TempDB
Fundamentals of TempDBBrent Ozar
 
Progressive Web APP ( PWA )
Progressive Web APP ( PWA ) Progressive Web APP ( PWA )
Progressive Web APP ( PWA ) Bijaya Oli
 
WPblog's Ultimate WordPress Guide to Boost Your Website Performance
WPblog's Ultimate WordPress Guide to Boost Your Website Performance WPblog's Ultimate WordPress Guide to Boost Your Website Performance
WPblog's Ultimate WordPress Guide to Boost Your Website Performance Jessica Ervin
 

Was ist angesagt? (17)

Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performance
 
Designers Guide to Web Performance Yotta 2013
Designers Guide to Web Performance Yotta 2013Designers Guide to Web Performance Yotta 2013
Designers Guide to Web Performance Yotta 2013
 
Delivering Optimal Images for Phones and Tablets on the Modern Web
Delivering Optimal Images for Phones and Tablets on the Modern WebDelivering Optimal Images for Phones and Tablets on the Modern Web
Delivering Optimal Images for Phones and Tablets on the Modern Web
 
Making Facebook Faster
Making Facebook FasterMaking Facebook Faster
Making Facebook Faster
 
Keys To World-Class Retail Web Performance - Expert tips for holiday web read...
Keys To World-Class Retail Web Performance - Expert tips for holiday web read...Keys To World-Class Retail Web Performance - Expert tips for holiday web read...
Keys To World-Class Retail Web Performance - Expert tips for holiday web read...
 
Veda Williams Project Management Secrets A Disciplined Approach To Develo...
Veda Williams   Project Management Secrets   A Disciplined Approach To Develo...Veda Williams   Project Management Secrets   A Disciplined Approach To Develo...
Veda Williams Project Management Secrets A Disciplined Approach To Develo...
 
WordCamp RVA 2011 - Performance & Tuning
WordCamp RVA 2011 - Performance & TuningWordCamp RVA 2011 - Performance & Tuning
WordCamp RVA 2011 - Performance & Tuning
 
Velocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in MillisecondsVelocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in Milliseconds
 
Magento performance & optimisation best practices
Magento performance & optimisation best practicesMagento performance & optimisation best practices
Magento performance & optimisation best practices
 
Measuring performance - Velocity 2016 Training
Measuring performance - Velocity 2016 TrainingMeasuring performance - Velocity 2016 Training
Measuring performance - Velocity 2016 Training
 
Seatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudySeatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case Study
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for Scalability
 
O'Reilly Software Architecture Conf: Cloud Economics
O'Reilly Software Architecture Conf: Cloud EconomicsO'Reilly Software Architecture Conf: Cloud Economics
O'Reilly Software Architecture Conf: Cloud Economics
 
Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost Jon Arne Sæterås - Give Responsive Design a mobile performance boost
Jon Arne Sæterås - Give Responsive Design a mobile performance boost
 
Fundamentals of TempDB
Fundamentals of TempDBFundamentals of TempDB
Fundamentals of TempDB
 
Progressive Web APP ( PWA )
Progressive Web APP ( PWA ) Progressive Web APP ( PWA )
Progressive Web APP ( PWA )
 
WPblog's Ultimate WordPress Guide to Boost Your Website Performance
WPblog's Ultimate WordPress Guide to Boost Your Website Performance WPblog's Ultimate WordPress Guide to Boost Your Website Performance
WPblog's Ultimate WordPress Guide to Boost Your Website Performance
 

Andere mochten auch

Rechtsbijstandverzekering Cijfers & Trends
Rechtsbijstandverzekering Cijfers & TrendsRechtsbijstandverzekering Cijfers & Trends
Rechtsbijstandverzekering Cijfers & TrendsGeldreview.nl
 
Geld Review Trends Sparen 2013
Geld Review Trends Sparen 2013Geld Review Trends Sparen 2013
Geld Review Trends Sparen 2013Geldreview.nl
 
Hypotheekrente historisch laag
Hypotheekrente historisch laagHypotheekrente historisch laag
Hypotheekrente historisch laagGeldreview.nl
 
Few Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondFew Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondSreejesh Madonandy
 
120502 Nam Ngum Basin Committee
120502 Nam Ngum Basin Committee120502 Nam Ngum Basin Committee
120502 Nam Ngum Basin CommitteeRuurdKuiper
 
130329 Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)
130329  Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)130329  Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)
130329 Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)RuurdKuiper
 
Lecture in Layouting
Lecture in LayoutingLecture in Layouting
Lecture in LayoutingNoel Ortega
 

Andere mochten auch (8)

Rechtsbijstandverzekering Cijfers & Trends
Rechtsbijstandverzekering Cijfers & TrendsRechtsbijstandverzekering Cijfers & Trends
Rechtsbijstandverzekering Cijfers & Trends
 
Geld Review Trends Sparen 2013
Geld Review Trends Sparen 2013Geld Review Trends Sparen 2013
Geld Review Trends Sparen 2013
 
Hypotheekrente historisch laag
Hypotheekrente historisch laagHypotheekrente historisch laag
Hypotheekrente historisch laag
 
Goedkoop geld lenen
Goedkoop geld lenenGoedkoop geld lenen
Goedkoop geld lenen
 
Few Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondFew Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyond
 
120502 Nam Ngum Basin Committee
120502 Nam Ngum Basin Committee120502 Nam Ngum Basin Committee
120502 Nam Ngum Basin Committee
 
130329 Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)
130329  Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)130329  Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)
130329 Irrigation Service Delivery: 'Kesiapan OP' (Readiness for O&M)
 
Lecture in Layouting
Lecture in LayoutingLecture in Layouting
Lecture in Layouting
 

Ähnlich wie Web Performance Internals explained for Developers and other stake holders.

Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)SOASTA
 
Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?) Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?) SOASTA
 
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Cliff Crocker
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Dakiry
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introMykola Kovsh
 
A Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringA Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringCliff Crocker
 
Impact2014: Practical Performance Troubleshooting
Impact2014: Practical Performance TroubleshootingImpact2014: Practical Performance Troubleshooting
Impact2014: Practical Performance TroubleshootingChris Bailey
 
Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringAkamai Technologies
 
load speed problems of web resources on the client side classification and ...
 load speed problems of web resources on the client side  classification and ... load speed problems of web resources on the client side  classification and ...
load speed problems of web resources on the client side classification and ...INFOGAIN PUBLICATION
 
Measure and Increase Developer Productivity with Help of Serverless at Server...
Measure and Increase Developer Productivity with Help of Serverless at Server...Measure and Increase Developer Productivity with Help of Serverless at Server...
Measure and Increase Developer Productivity with Help of Serverless at Server...Vadym Kazulkin
 
Optimizing WordPress PHP performance with Tideways
Optimizing WordPress PHP performance with TidewaysOptimizing WordPress PHP performance with Tideways
Optimizing WordPress PHP performance with TidewaysSeravo
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbsvarien
 
Magical Performance tuning with Gomez
Magical Performance tuning with GomezMagical Performance tuning with Gomez
Magical Performance tuning with Gomezmcsaha
 
Are You Ready For More Visitors Cognizant Gomez Jan20
Are You Ready For More Visitors   Cognizant  Gomez Jan20Are You Ready For More Visitors   Cognizant  Gomez Jan20
Are You Ready For More Visitors Cognizant Gomez Jan20Compuware APM
 
Monitoring web application response times, a new approach
Monitoring web application response times, a new approachMonitoring web application response times, a new approach
Monitoring web application response times, a new approachMark Friedman
 
Performance soapui siege_last
Performance soapui siege_lastPerformance soapui siege_last
Performance soapui siege_lastcdnaro
 
Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices Compuware APM
 
Performance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile AppsPerformance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile AppsSalesforce Developers
 

Ähnlich wie Web Performance Internals explained for Developers and other stake holders. (20)

Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)Metrics, Metrics Everywhere (but where the heck do you start?)
Metrics, Metrics Everywhere (but where the heck do you start?)
 
Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?) Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?)
 
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
A Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringA Modern Approach to Performance Monitoring
A Modern Approach to Performance Monitoring
 
Presemtation Tier Optimizations
Presemtation Tier OptimizationsPresemtation Tier Optimizations
Presemtation Tier Optimizations
 
Impact2014: Practical Performance Troubleshooting
Impact2014: Practical Performance TroubleshootingImpact2014: Practical Performance Troubleshooting
Impact2014: Practical Performance Troubleshooting
 
Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance Monitoring
 
load speed problems of web resources on the client side classification and ...
 load speed problems of web resources on the client side  classification and ... load speed problems of web resources on the client side  classification and ...
load speed problems of web resources on the client side classification and ...
 
Browser Based Performance Testing and Tuning
Browser Based Performance Testing and TuningBrowser Based Performance Testing and Tuning
Browser Based Performance Testing and Tuning
 
Measure and Increase Developer Productivity with Help of Serverless at Server...
Measure and Increase Developer Productivity with Help of Serverless at Server...Measure and Increase Developer Productivity with Help of Serverless at Server...
Measure and Increase Developer Productivity with Help of Serverless at Server...
 
Optimizing WordPress PHP performance with Tideways
Optimizing WordPress PHP performance with TidewaysOptimizing WordPress PHP performance with Tideways
Optimizing WordPress PHP performance with Tideways
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbs
 
Magical Performance tuning with Gomez
Magical Performance tuning with GomezMagical Performance tuning with Gomez
Magical Performance tuning with Gomez
 
Are You Ready For More Visitors Cognizant Gomez Jan20
Are You Ready For More Visitors   Cognizant  Gomez Jan20Are You Ready For More Visitors   Cognizant  Gomez Jan20
Are You Ready For More Visitors Cognizant Gomez Jan20
 
Monitoring web application response times, a new approach
Monitoring web application response times, a new approachMonitoring web application response times, a new approach
Monitoring web application response times, a new approach
 
Performance soapui siege_last
Performance soapui siege_lastPerformance soapui siege_last
Performance soapui siege_last
 
Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices Gomez Blazing Fast Cloud Best Practices
Gomez Blazing Fast Cloud Best Practices
 
Performance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile AppsPerformance Measurement and Monitoring for Salesforce Web & Mobile Apps
Performance Measurement and Monitoring for Salesforce Web & Mobile Apps
 

Kürzlich hochgeladen

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 

Kürzlich hochgeladen (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 

Web Performance Internals explained for Developers and other stake holders.

  • 1. 2014 TBC-World 1 Unravelling Web Performance Internals
  • 2. 2014 TBC-World 2  Internet is built with trust in mind between nodes  Scalable Decentralized Architecture, open to add remove any number of nodes  IP Addresses, Protocols SOME BASICS ON INTERNET!
  • 3. 2014 TBC-World 3 LATENCY: DISTANCE, ROUTE/TRAFFIC,PACKET LOSS LAST MILE
  • 4. 2014 TBC-World 4 Web Performance Matters Foundation of “User Experience” Web performance is widely mis-understood! TIME(SPEED) IS MONEY!
  • 5. 2014 TBC-World 5 PERCIEVED EXP. VS REAL PERF.  If measured objectively, both site would have looked to have taken same amount of time to Load.  But, perceived performance has a lot to do with when is the “Document Ready”  Sometimes, all that requires is “Perceived Experience” than real performance numbers! E.g. Effect on a Button Click
  • 7. 2014 TBC-World 7  Hundreds of files to load in a Web Address  Sometimes more than a Megabyte to download  Developer Errors  HTTP 1.1 is not that great  100s of resources, Render blocking scripts, DNS resolutions, Multiple downloads, Bandwidth, Latency  Not clear priority on critical performance areas USERS ARE NOT READY TO WAIT!
  • 8. 2014 TBC-World 8 LET US GO UNDER THE HOOD  Your Computer: Client / Browser  Sea of Servers, Cloud  DNS (Resolving NS, Root NS, TLD NS, Authoritative NS)  IP Address, TCP Handshake  Network  HTTP Request, HTTP Response  Binary data, Encode  HTML (metadata, body)  SESSION  CSS,JS,AJAX/XML HTTP REQUESTS
  • 9. 2014 TBC-World 9 A WEB ADDRESS  Amazon’s target in major US Cities • <200 ms to First Byte (TTFB) • <500 ms to Above the Fold content • <2000 ms to complete a page load
  • 10. 2014 TBC-World 10 What a Desktop/Mobile Browser is expected to do at the Blink of an EYE!
  • 11. 2014 TBC-World 11 HTTP REQUEST AND RESPONSE  HTML DOM  CSS  Images  JS 
  • 12. 2014 TBC-World 12 IMPORTANT TO IMPROVE WEB PERF. Image Source: Radware Bringing it from 16+ sec to 7-8 sec is the easier part •Bringing it under 4 sec is the real challenge •Easy to blame Hardware – but that may not be the issue Mature Optimization is the key
  • 13. 2014 TBC-World 13  Round Trip Time, Response Time  Throughput  Latency  Load Time, time to First Byte  Payload  DNS Lookup times  End user Experience on Real Browsers  Type of Payload  Level of Caching  On Load Performance  Web Perf. on Phone, Web, Tab, Desktop  GTMetrix.com, Webpagetest.org, Pingdom  YSlow, Google Page Speed test  Device Simulators  Grinder, jMeter, Load Runner: Performance under stress/load  Google Analytics (For real PROD numbers ) How to Measure and Analyze? What to Measure?
  • 14. 2014 TBC-World 14 BUT, DO WE KNOW HOW TO INTERPRET RESULTS?
  • 15. 2014 TBC-World 15 WHAT COULD BE WRONG?  Test conditions  # of Resources to Load and Type of resources  Ordering of Resources  Trouble maker resources -HTTP Statuses  Too late to paint?  Lack of Caching?  Too many connections to same host?  Large Time to First Byte?  Too many plugins?  Total Payload, Too many images?  Pages landing to naked domain or www?
  • 16. 2014 TBC-World 16 COMPARE  Payload  Grade  #of Requests  Caching  Other params
  • 17. 2014 TBC-World 17 REAL WORLD PERF.  Beware of Averages  Performance of all Pages and not just Home page or few pages  Beware of route congestions on specific routes on specific days/time
  • 18. 2014 TBC-World 18 PERF. WHEN STRESSED  Find the max throughput under a reasonable Response time variance  Repeat Load Tests with several perf tuning steps including HW spec changes
  • 19. 2014 TBC-World 19 WPO (WEB PERFORMANCE OPTIMISATION) FACTORS  Locations of the Client Browser  Server Location, CDN Edge locations  Bandwidth, Type of Connectivity (2G, 3G, 4G, DSL, Fiber, Cable)  Type of Browser – some browsers are Smarter  Client and Server Config, Scale horizontal, Scale Vertical Cloud, PAAS or IAAS Cloud  One size fits all Language frameworks, CMS Frameworks, e-COM Frameworks, jQuery Libraries, Boiler plate templates could impact perf.  Payload of the page  ISPs, Traffic en-Route  # of Trans/Load on the server  Web Stack: OS, Web Server, Relational DB Servers, Programming Lang, No SQL Databases  JSON vs XML  Async, Lazy Loading  Responsive vs Device Type Specific
  • 20. 2014 TBC-World 20 DEEP INTO WPO FACTORS  Front End Optimization  Sprites, Compression  Static/Dynamic Page Caching  Bundling  File Minification  Domain Sharding  Browser Caching  Image Optimization, Progressive jPEG  Defer JS parsing  DB Caching and Indexing  Efficient Code  SSD Drives, IOPS optimized Drives  DDOS counters, Defenders  HTTP1.1,HTTPS, SPDY, HTTP2  All the Fancy Scripts (Analytics, Effects, Social share scripts etc..)  LESSER CNAMEs  HTTP Failure Statuses
  • 21. 2014 TBC-World 21  Understand the need – A sub 4 sec load time may not be what all customers are looking for.  If sub 4 sec load is required, check if it is required in all pages – get Clarity  Get the “Buy-in” for agreed numbers from all stakeholders  Do not let the perf measurement and tuning be the first casuality in the rush to the reduce time to market(TTM), and while shipping a minimum viable product (MVP) ACTION STEPS
  • 22. 2014 TBC-World 22  Build it Right, Deploy it right:  Follow best practices. Everyone must be aware: Do share perf tips learned here with your team!  Eliminate 404 and un-necessary redirects  Reduce # of images, Optimize images, Compress, Minimize payload, bundle  Cache it right, Use CDN, Avoid too many hosts but not too less too.  Interpret Page test results correctly and take action  Write Quality code – High Performance code  Put Special Focus on Front-End, a typical problem area  Identify critical screens, too much focus on home page can backfire ACTION STEPS
  • 23. 2014 TBC-World 23  Benchmark/Optimize/Automate:  Conduct User Experience Studies. Conduct Perf. tests on load and otherwise  Benchmark/Optimize: Make Page speed test (Use Yslow or Google speed test) part of regular sprint test. If possible, automate it right into continuous integration scripts , where possible.  Consider Deployment of Dynamic Site Acceleration Solutions like Akamai/YOTTA when demands are for sub 3 sec page load, across geographies ACTION STEPS
  • 24. 2014 TBC-World 24 My Coordinates: linkedin.com/in/sreejeshkm http://www.slideshare.net/sreejeshkm THANK YOU Image Sources: Radware, Akamaii,

Hinweis der Redaktion

  1. http://www.akamai.com/html/technology/dataviz1.html
  2. http://www.akamai.com/html/technology/dataviz1.html
  3. http://www.akamai.com/html/technology/dataviz1.html
  4. Web Performance Optimization - WPO