Your Script Just Killed My Site

Your script just
  killed my site



stevesouders.com/docs/fluent-spof-20120530.pptx
Disclaimer: This content does not necessarily reflect the opinions of my employer.
SPOF
Your Script Just Killed My Site
Your Script Just Killed My Site
synchronous scripts block
all following elements
from rendering
in all browsers
#fail
async


#fail
async

           sync

   async
Frontend
 SPOF
http://www.webpagetest.org/result/120529_41_HWV/
Your Script Just Killed My Site
entire BODY blocked
   from rendering
http://www.webpagetest.org/result/120529_41_HWV/
Your Script Just Killed My Site
mysql>
mysql> select p.url, wptid
mysql> select p.url, wptid
from pages as p, requests as r
mysql> select p.url, wptid
from pages as p, requests as r
where p.pageid >= 844954 and
p.pageid <= 1564447 and
p.pageid = r.pageid and
mysql> select p.url, wptid
from pages as p, requests as r
where p.pageid >= 844954 and
p.pageid <= 1564447 and
p.pageid = r.pageid and
rank < 20000 and
mysql> select p.url, wptid
from pages as p, requests as r
where p.pageid >= 844954 and
p.pageid <= 1564447 and
p.pageid = r.pageid and
rank < 20000 and
resp_content_type like “%script%” and
mysql> select p.url, wptid
from pages as p, requests as r
where p.pageid >= 844954 and
p.pageid <= 1564447 and
p.pageid = r.pageid and
rank < 20000 and
resp_content_type like “%script%” and
time > 10000 and
mysql> select p.url, wptid
from pages as p, requests as r
where p.pageid >= 844954 and
p.pageid <= 1564447 and
p.pageid = r.pageid and
rank < 20000 and
resp_content_type like “%script%” and
time > 10000 and
renderStart > 10000
mysql> select p.url, wptid
from pages as p, requests as r
where p.pageid >= 844954 and
p.pageid <= 1564447 and
p.pageid = r.pageid and
rank < 20000 and
resp_content_type like “%script%” and
time > 10000 and
renderStart > 10000
group by p.pageid;
Your Script Just Killed My Site
Your Script Just Killed My Site
Your Script Just Killed My Site
Your Script Just Killed My Site
Your Script Just Killed My Site
Your Script Just Killed My Site
Your Script Just Killed My Site
what’s your website’s
weakest link?
1 of 30

Recommended

High Performance Snippets by
High Performance SnippetsHigh Performance Snippets
High Performance SnippetsSteve Souders
5.9K views33 slides
Frontend SPOF by
Frontend SPOFFrontend SPOF
Frontend SPOFPatrick Meenan
4.2K views30 slides
Cache is King by
Cache is KingCache is King
Cache is KingSteve Souders
6.6K views70 slides
JavaScript Performance (at SFJS) by
JavaScript Performance (at SFJS)JavaScript Performance (at SFJS)
JavaScript Performance (at SFJS)Steve Souders
22.8K views49 slides
Web 2.0 Expo: Even Faster Web Sites by
Web 2.0 Expo: Even Faster Web SitesWeb 2.0 Expo: Even Faster Web Sites
Web 2.0 Expo: Even Faster Web SitesSteve Souders
6.6K views34 slides
@media - Even Faster Web Sites by
@media - Even Faster Web Sites@media - Even Faster Web Sites
@media - Even Faster Web SitesSteve Souders
11.5K views50 slides

More Related Content

What's hot

High Performance Mobile (SF/SV Web Perf) by
High Performance Mobile (SF/SV Web Perf)High Performance Mobile (SF/SV Web Perf)
High Performance Mobile (SF/SV Web Perf)Steve Souders
18.6K views68 slides
Design+Performance Velocity 2015 by
Design+Performance Velocity 2015Design+Performance Velocity 2015
Design+Performance Velocity 2015Steve Souders
18.3K views59 slides
State of the resource timing api by
State of the resource timing apiState of the resource timing api
State of the resource timing apiAaron Peters
4.7K views21 slides
High Performance Web Components by
High Performance Web ComponentsHigh Performance Web Components
High Performance Web ComponentsSteve Souders
6.2K views63 slides
Web20expo 20080425 by
Web20expo 20080425Web20expo 20080425
Web20expo 20080425Media Gorod
392 views34 slides
Souders WPO Web2.0Expo by
Souders WPO Web2.0ExpoSouders WPO Web2.0Expo
Souders WPO Web2.0Expoguest0b3d92d
421 views39 slides

What's hot(20)

High Performance Mobile (SF/SV Web Perf) by Steve Souders
High Performance Mobile (SF/SV Web Perf)High Performance Mobile (SF/SV Web Perf)
High Performance Mobile (SF/SV Web Perf)
Steve Souders18.6K views
Design+Performance Velocity 2015 by Steve Souders
Design+Performance Velocity 2015Design+Performance Velocity 2015
Design+Performance Velocity 2015
Steve Souders18.3K views
State of the resource timing api by Aaron Peters
State of the resource timing apiState of the resource timing api
State of the resource timing api
Aaron Peters4.7K views
High Performance Web Components by Steve Souders
High Performance Web ComponentsHigh Performance Web Components
High Performance Web Components
Steve Souders6.2K views
Web20expo 20080425 by Media Gorod
Web20expo 20080425Web20expo 20080425
Web20expo 20080425
Media Gorod392 views
Souders WPO Web2.0Expo by guest0b3d92d
Souders WPO Web2.0ExpoSouders WPO Web2.0Expo
Souders WPO Web2.0Expo
guest0b3d92d421 views
Automatic Functional Testing with Selenium and SauceLabs by Joseph Chiang
Automatic Functional Testing with Selenium and SauceLabsAutomatic Functional Testing with Selenium and SauceLabs
Automatic Functional Testing with Selenium and SauceLabs
Joseph Chiang2.3K views
How fast are we going now? by Steve Souders
How fast are we going now?How fast are we going now?
How fast are we going now?
Steve Souders37.5K views
implement lighthouse-ci with your web development workflow by WordPress
implement lighthouse-ci with your web development workflowimplement lighthouse-ci with your web development workflow
implement lighthouse-ci with your web development workflow
WordPress113 views
High Performance JavaScript 2011 by Nicholas Zakas
High Performance JavaScript 2011High Performance JavaScript 2011
High Performance JavaScript 2011
Nicholas Zakas10.1K views
Hitchhiker's guide to the front end development by 정윤 김
Hitchhiker's guide to the front end developmentHitchhiker's guide to the front end development
Hitchhiker's guide to the front end development
정윤 김2.2K views
Chrome Devtools Protocol via Selenium/Appium (Japanese) by Kazuaki Matsuo
Chrome Devtools Protocol via Selenium/Appium (Japanese)Chrome Devtools Protocol via Selenium/Appium (Japanese)
Chrome Devtools Protocol via Selenium/Appium (Japanese)
Kazuaki Matsuo790 views
Automate testing with behat, selenium, phantom js and nightwatch.js (5) by Faichi Solutions
Automate testing with behat, selenium, phantom js and nightwatch.js (5)Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Faichi Solutions856 views
Web Directions South - Even Faster Web Sites by Steve Souders
Web Directions South - Even Faster Web SitesWeb Directions South - Even Faster Web Sites
Web Directions South - Even Faster Web Sites
Steve Souders2.8K views

Similar to Your Script Just Killed My Site

"Your script just killed my site" by Steve Souders by
"Your script just killed my site" by Steve Souders"Your script just killed my site" by Steve Souders
"Your script just killed my site" by Steve SoudersDmitry Makarchuk
1.5K views61 slides
Bringing the JAMstack to the Enterprise by
Bringing the JAMstack to the EnterpriseBringing the JAMstack to the Enterprise
Bringing the JAMstack to the EnterpriseJamund Ferguson
657 views92 slides
Converting Your Dev Environment to a Docker Stack - Cascadia by
Converting Your Dev Environment to a Docker Stack - CascadiaConverting Your Dev Environment to a Docker Stack - Cascadia
Converting Your Dev Environment to a Docker Stack - CascadiaDana Luther
195 views128 slides
Hacker, you shall not pass! by
Hacker, you shall not pass!Hacker, you shall not pass!
Hacker, you shall not pass!Cláudio André
1.5K views53 slides
pub by
pubpub
pubFrontware International
5.1K views31 slides
pub by
pubpub
pubFrontware International
3.7K views31 slides

Similar to Your Script Just Killed My Site(20)

"Your script just killed my site" by Steve Souders by Dmitry Makarchuk
"Your script just killed my site" by Steve Souders"Your script just killed my site" by Steve Souders
"Your script just killed my site" by Steve Souders
Dmitry Makarchuk1.5K views
Bringing the JAMstack to the Enterprise by Jamund Ferguson
Bringing the JAMstack to the EnterpriseBringing the JAMstack to the Enterprise
Bringing the JAMstack to the Enterprise
Jamund Ferguson657 views
Converting Your Dev Environment to a Docker Stack - Cascadia by Dana Luther
Converting Your Dev Environment to a Docker Stack - CascadiaConverting Your Dev Environment to a Docker Stack - Cascadia
Converting Your Dev Environment to a Docker Stack - Cascadia
Dana Luther195 views
Converting Your Dev Environment to a Docker Stack - php[world] by Dana Luther
Converting Your Dev Environment to a Docker Stack - php[world]Converting Your Dev Environment to a Docker Stack - php[world]
Converting Your Dev Environment to a Docker Stack - php[world]
Dana Luther311 views
Progressive Web Apps by FITC
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
FITC549 views
Use Xdebug to profile PHP by Seravo
Use Xdebug to profile PHPUse Xdebug to profile PHP
Use Xdebug to profile PHP
Seravo588 views
Rails Presentation (Anton Dmitriyev) by True-Vision
Rails Presentation (Anton Dmitriyev)Rails Presentation (Anton Dmitriyev)
Rails Presentation (Anton Dmitriyev)
True-Vision209 views
Kicking off with Zend Expressive and Doctrine ORM (PHPNW2016) by James Titcumb
Kicking off with Zend Expressive and Doctrine ORM (PHPNW2016)Kicking off with Zend Expressive and Doctrine ORM (PHPNW2016)
Kicking off with Zend Expressive and Doctrine ORM (PHPNW2016)
James Titcumb1.3K views
Hyper v replication on windows server 2016 step by step by Ahmed Abdelwahed
Hyper v replication on windows server 2016 step by stepHyper v replication on windows server 2016 step by step
Hyper v replication on windows server 2016 step by step
Ahmed Abdelwahed130 views
Kicking off with Zend Expressive and Doctrine ORM (ZendCon 2016) by James Titcumb
Kicking off with Zend Expressive and Doctrine ORM (ZendCon 2016)Kicking off with Zend Expressive and Doctrine ORM (ZendCon 2016)
Kicking off with Zend Expressive and Doctrine ORM (ZendCon 2016)
James Titcumb694 views
RESS: An Evolution of Responsive Web Design by Dave Olsen
RESS: An Evolution of Responsive Web DesignRESS: An Evolution of Responsive Web Design
RESS: An Evolution of Responsive Web Design
Dave Olsen25.3K views

More from Steve Souders

Make JavaScript Faster by
Make JavaScript FasterMake JavaScript Faster
Make JavaScript FasterSteve Souders
2.9K views47 slides
Metrics of Joy by
Metrics of JoyMetrics of Joy
Metrics of JoySteve Souders
2.8K views34 slides
The Perception of Speed by
The Perception of SpeedThe Perception of Speed
The Perception of SpeedSteve Souders
4.1K views40 slides
High Performance Web Components by
High Performance Web ComponentsHigh Performance Web Components
High Performance Web ComponentsSteve Souders
10.3K views45 slides
Prebrowsing - Velocity NY 2013 by
Prebrowsing - Velocity NY 2013Prebrowsing - Velocity NY 2013
Prebrowsing - Velocity NY 2013Steve Souders
4.3K views60 slides
Souders WPO Web 2.0 Expo by
Souders WPO Web 2.0 ExpoSouders WPO Web 2.0 Expo
Souders WPO Web 2.0 ExpoSteve Souders
6.9K views39 slides

More from Steve Souders(12)

Make JavaScript Faster by Steve Souders
Make JavaScript FasterMake JavaScript Faster
Make JavaScript Faster
Steve Souders2.9K views
The Perception of Speed by Steve Souders
The Perception of SpeedThe Perception of Speed
The Perception of Speed
Steve Souders4.1K views
High Performance Web Components by Steve Souders
High Performance Web ComponentsHigh Performance Web Components
High Performance Web Components
Steve Souders10.3K views
Prebrowsing - Velocity NY 2013 by Steve Souders
Prebrowsing - Velocity NY 2013Prebrowsing - Velocity NY 2013
Prebrowsing - Velocity NY 2013
Steve Souders4.3K views
Souders WPO Web 2.0 Expo by Steve Souders
Souders WPO Web 2.0 ExpoSouders WPO Web 2.0 Expo
Souders WPO Web 2.0 Expo
Steve Souders6.9K views
Even Faster Web Sites at jQuery Conference '09 by Steve Souders
Even Faster Web Sites at jQuery Conference '09Even Faster Web Sites at jQuery Conference '09
Even Faster Web Sites at jQuery Conference '09
Steve Souders1.2K views
Browserscope Launch at TAE by Steve Souders
Browserscope Launch at TAEBrowserscope Launch at TAE
Browserscope Launch at TAE
Steve Souders708 views
Even Faster Web Sites at The Ajax Experience by Steve Souders
Even Faster Web Sites at The Ajax ExperienceEven Faster Web Sites at The Ajax Experience
Even Faster Web Sites at The Ajax Experience
Steve Souders1.2K views
SXSW: Even Faster Web Sites by Steve Souders
SXSW: Even Faster Web SitesSXSW: Even Faster Web Sites
SXSW: Even Faster Web Sites
Steve Souders9.4K views

Recently uploaded

Voice Logger - Telephony Integration Solution at Aegis by
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at AegisNirmal Sharma
39 views1 slide
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveNetwork Automation Forum
31 views35 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
263 views86 slides
Uni Systems for Power Platform.pptx by
Uni Systems for Power Platform.pptxUni Systems for Power Platform.pptx
Uni Systems for Power Platform.pptxUni Systems S.M.S.A.
56 views21 slides
Zero to Automated in Under a Year by
Zero to Automated in Under a YearZero to Automated in Under a Year
Zero to Automated in Under a YearNetwork Automation Forum
15 views23 slides
Mini-Track: AI and ML in Network Operations Applications by
Mini-Track: AI and ML in Network Operations ApplicationsMini-Track: AI and ML in Network Operations Applications
Mini-Track: AI and ML in Network Operations ApplicationsNetwork Automation Forum
10 views24 slides

Recently uploaded(20)

Voice Logger - Telephony Integration Solution at Aegis by Nirmal Sharma
Voice Logger - Telephony Integration Solution at AegisVoice Logger - Telephony Integration Solution at Aegis
Voice Logger - Telephony Integration Solution at Aegis
Nirmal Sharma39 views
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive by Network Automation Forum
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLiveAutomating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Automating a World-Class Technology Conference; Behind the Scenes of CiscoLive
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software263 views
SAP Automation Using Bar Code and FIORI.pdf by Virendra Rai, PMP
SAP Automation Using Bar Code and FIORI.pdfSAP Automation Using Bar Code and FIORI.pdf
SAP Automation Using Bar Code and FIORI.pdf
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors by sugiuralab
TouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective SensorsTouchLog: Finger Micro Gesture Recognition  Using Photo-Reflective Sensors
TouchLog: Finger Micro Gesture Recognition Using Photo-Reflective Sensors
sugiuralab19 views
"Running students' code in isolation. The hard way", Yurii Holiuk by Fwdays
"Running students' code in isolation. The hard way", Yurii Holiuk "Running students' code in isolation. The hard way", Yurii Holiuk
"Running students' code in isolation. The hard way", Yurii Holiuk
Fwdays11 views
Case Study Copenhagen Energy and Business Central.pdf by Aitana
Case Study Copenhagen Energy and Business Central.pdfCase Study Copenhagen Energy and Business Central.pdf
Case Study Copenhagen Energy and Business Central.pdf
Aitana16 views
Five Things You SHOULD Know About Postman by Postman
Five Things You SHOULD Know About PostmanFive Things You SHOULD Know About Postman
Five Things You SHOULD Know About Postman
Postman33 views

Your Script Just Killed My Site

Editor's Notes

  1. http://www.flickr.com/photos/jocelynaubert/3100384270/
  2. http://www.flickr.com/photos/darwinbell/465459020/
  3. http://en.wikipedia.org/wiki/Single_point_of_failure
  4. WidgetsAdsAnalytics
  5. Later in the docs they talk about how the LATER resources are loaded async, but not this bootstrap script.All it takes is one.
  6. http://httparchive.webpagetest.org/result/120401_40_WFQG/
  7. http://httparchive.webpagetest.org/result/120515_5_4S4C/plusone.js and all.js are synchronous
  8. http://httparchive.webpagetest.org/result/120515_0_DNT/glamadapt_jsrv.act is inserted by wChannelModule.act using document.writelikecool is ranked 11KGlam Media is “the leader in curated social media content”
  9. http://httparchive.webpagetest.org/result/120301_AP_P4W3/rank #19Kall.js, widgets.js, eluminate.js all loaded sync
  10. http://httparchive.webpagetest.org/result/120401_8H_VTA3/
  11. http://httparchive.webpagetest.org/result/120315_VQ_QCZP/fonts
  12. http://httparchive.webpagetest.org/result/120515_0_35V/Their own CSS file
  13. http://www.flickr.com/photos/rusty-projector/225212919/Thanks for listening to my cautionary tale of dread and foreboding. But it’s not all doom and gloom.
  14. There is a brighter future where snippets aren’t a frontend SPOF.
  15. http://www.flickr.com/photos/darwinbell/465459020/