SlideShare a Scribd company logo
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,

More Related Content

What's hot

Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performance
Sagar Desarda
 
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
Luis Alejandro Ramírez Gallardo
 
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
Joshua Marantz
 
Making Facebook Faster
Making Facebook FasterMaking Facebook Faster
Making Facebook Faster
guest1240e7c
 
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 & Tuning
Timothy 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 Milliseconds
Cliff Crocker
 
Magento performance & optimisation best practices
Magento performance & optimisation best practicesMagento performance & optimisation best practices
Magento performance & optimisation best practices
Philippe Humeau
 
Measuring performance - Velocity 2016 Training
Measuring performance - Velocity 2016 TrainingMeasuring performance - Velocity 2016 Training
Measuring performance - Velocity 2016 Training
Patrick Meenan
 
Seatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case StudySeatwave Web Peformance Optimisation Case Study
Seatwave Web Peformance Optimisation Case Study
Stephen Thair
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for Scalability
Tuenti
 
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
Chris 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 TempDB
Brent 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
 

What's hot (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
 

Viewers also liked

Rechtsbijstandverzekering Cijfers & Trends
Rechtsbijstandverzekering Cijfers & TrendsRechtsbijstandverzekering Cijfers & Trends
Rechtsbijstandverzekering Cijfers & Trends
Geldreview.nl
 
Geld Review Trends Sparen 2013
Geld Review Trends Sparen 2013Geld Review Trends Sparen 2013
Geld Review Trends Sparen 2013
Geldreview.nl
 
Hypotheekrente historisch laag
Hypotheekrente historisch laagHypotheekrente historisch laag
Hypotheekrente historisch laag
Geldreview.nl
 
Goedkoop geld lenen
Goedkoop geld lenenGoedkoop geld lenen
Goedkoop geld lenen
Geldreview.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 beyond
Sreejesh Madonandy
 
120502 Nam Ngum Basin Committee
120502 Nam Ngum Basin Committee120502 Nam Ngum Basin Committee
120502 Nam Ngum Basin Committee
RuurdKuiper
 
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 Layouting
Noel Ortega
 

Viewers also liked (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
 

Similar to 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 intro
Mykola Kovsh
 
A Modern Approach to Performance Monitoring
A Modern Approach to Performance MonitoringA Modern Approach to Performance Monitoring
A Modern Approach to Performance Monitoring
Cliff Crocker
 
Presemtation Tier Optimizations
Presemtation Tier OptimizationsPresemtation Tier Optimizations
Presemtation Tier Optimizations
Anup Hariharan Nair
 
Impact2014: Practical Performance Troubleshooting
Impact2014: Practical Performance TroubleshootingImpact2014: Practical Performance Troubleshooting
Impact2014: Practical Performance Troubleshooting
Chris 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 Monitoring
Akamai 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
 
Browser Based Performance Testing and Tuning
Browser Based Performance Testing and TuningBrowser Based Performance Testing and Tuning
Browser Based Performance Testing and Tuning
Bala Murali Krishna Kanchukambala
 
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 Tideways
Seravo
 
Magento performancenbs
Magento performancenbsMagento performancenbs
Magento performancenbs
varien
 
Magical Performance tuning with Gomez
Magical Performance tuning with GomezMagical Performance tuning with Gomez
Magical Performance tuning with Gomez
mcsaha
 
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
Compuware 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 approach
Mark Friedman
 
Performance soapui siege_last
Performance soapui siege_lastPerformance soapui siege_last
Performance soapui siege_last
cdnaro
 
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 Apps
Salesforce Developers
 

Similar to 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
 

Recently uploaded

“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 

Recently uploaded (20)

“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 

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,

Editor's Notes

  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