SlideShare a Scribd company logo
Front-end performance.
● 44 requests for anonymous user 
● 60 requests for administrator
● 28 requests for anonymous user 
● 39 requests for administrator
Why it’s important?
● Better user experience 
● Higher conversion rate 
● SEO
Numbers
● 80-95% of performance happens in the front end 
● Amazon: 100ms cost 1% of sales 
● Yahoo: 400ms improvement ~9% traffic 
● Firefox: 2.2s improvement ~15.4% downloads
Tools
● Yslow 
● PageSpeed 
● Chrome DevTools 
● Firebug
● Use fewer HTTP requests 
● Use CDN 
● Avoid empty src or href 
● Add Expires header 
● Compress components with gzip 
● Put CSS at top 
● Put JS at bottom 
● Make JS and CSS external 
● Reduce DNS lookups
● Minify JS and CSS 
● Avoid URL redirects 
● Remove duplicate CSS and JS 
● Configure ETags 
● Make AJAX cacheable 
● Use GET for AJAX requests 
● Reduce number of DOM elements 
● Avoid HTTP 404 error 
● Reduce cookie size
● Use cookie-free domains 
● Avoid AlphaImageLoader filter 
● Do not scale images in HTML 
● Make favicon small and cacheable
Advanced CSS/JS Aggregation 
● gzip CSS/JS 
● Bundler: groups files together 
● CSS/JS compression 
● CSS/JS validation 
● JS to the footer 
● lot-lot more options
Advanced CSS/JS Aggregation 
● 23.4KB vs 4.5KB gzipped CSS 
(~80% decrease) 
● 93.9KB vs 32.3KB gzipped JS 
(~65% decrease) 
● 23.4KB vs 4.4KB gzip + minify CSS 
(~81% decrease) 
● 93.9KB vs 28.5KB gzip + minify JS 
(~70% decrease)
CSS
Write your styles cleverly 
● SMACSS 
● BEM 
● Object Oriented CSS
Write your styles cleverly 
● SMACSS 
● BEM 
● Object Oriented CSS 
● SASS / Compass 
● Less 
● ...
Use CSS3!!!
Do not do a lot to support 
legacy browsers!!!
Remove unused CSS 
WTF?
Remove unused CSS 
Omega
Remove unused CSS 
Adaptive Theme
Remove unused CSS 
Tao 
function tao_css_alter(&$css) { 
$exclude = array( 
'misc/vertical-tabs.css' => FALSE, 
'modules/aggregator/aggregator.css' => FALSE, 
'modules/block/block.css' => FALSE, 
'modules/book/book.css' => FALSE, 
'modules/comment/comment.css' => FALSE, 
//... 
'modules/update/update.css' => FALSE, 
'modules/user/user.css' => FALSE, 
); 
$css = array_diff_key($css, $exclude); 
}
Use CSS sprites 
3.85KB 
2.5KB
Also 
● Icon Fonts 
● SVG
jQuery Update 
Default: 
1.4.4 (2010.11.11) 
jQuery Update: 
1.7 site’s theme + 1.5 admin pages
Images
Do not set 100% quality
100% quality 
Original JPEG: 
640x480px, 49.38KB 
● No effects: 151KB 
● Rotate 360°: 151KB 
● Scale 2000px x 100%, no upscaling: 151KB 
● Scale & Crop 480x360px: 139KB
100% quality 
Original JPEG: 
640x480px, 49.38KB 
● No effects: 151KB 
● Rotate 360°: 151KB 
● Scale 2000px x 100%, no upscaling: 151KB 
● Scale & Crop 480x360px: 139KB
● Image Lazyloader 
● Picture + Breakpoints
Markup 
● Fences 
● Views style settings
See also 
● CDN 
● Magic 
● Speedy 
● Minify 
● Core Library 
● UglifyJS
Thank you

More Related Content

What's hot

High Performance Front-End Development
High Performance Front-End DevelopmentHigh Performance Front-End Development
High Performance Front-End Development
drywallbmb
 
WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...
WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...
WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...
New Tricks
 
Artdm171 Week5 Css
Artdm171 Week5 CssArtdm171 Week5 Css
Artdm171 Week5 Css
Gilbert Guerrero
 
New text document
New text documentNew text document
New text document
Aline Aguiar
 
Introduction of web desiging
Introduction of web desigingIntroduction of web desiging
Introduction of web desiging
prateekkirar
 
7steps to build a website
7steps to build a website7steps to build a website
7steps to build a website
Omar Montasser
 
PageSpeed Optimization
PageSpeed OptimizationPageSpeed Optimization
PageSpeed Optimization
Shweta Patel
 
Front-End Performance Optimization in WordPress
Front-End Performance Optimization in WordPressFront-End Performance Optimization in WordPress
Front-End Performance Optimization in WordPress
drywallbmb
 
How to create a website in wordpress
How to create a website in wordpressHow to create a website in wordpress
How to create a website in wordpress
MarkupBox
 
Web Standards and Accessibility
Web Standards and AccessibilityWeb Standards and Accessibility
Web Standards and Accessibility
Karl Dawson
 
Magehack_Autogrid presentation
Magehack_Autogrid presentationMagehack_Autogrid presentation
Magehack_Autogrid presentation
Szabolcs (Sam) Ban
 
KCDC - top free ASP.NET performance tools
KCDC - top free ASP.NET performance toolsKCDC - top free ASP.NET performance tools
KCDC - top free ASP.NET performance tools
benemmett
 
Introduction to Jquery
Introduction to JqueryIntroduction to Jquery
Introduction to Jquery
Gurpreet singh
 
Responsive Web Development
Responsive Web DevelopmentResponsive Web Development
Responsive Web Development
Reema
 
Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"
Fwdays
 
Php ppt
Php pptPhp ppt
Seo basics
Seo basicsSeo basics
Seo basics
Jon Thomas
 
Famo.us introduction
Famo.us introductionFamo.us introduction
Famo.us introduction
Allen Wu
 
Static Site Generation with Hugo and Markdown
Static Site Generation with Hugo and MarkdownStatic Site Generation with Hugo and Markdown
Static Site Generation with Hugo and Markdown
Nic Raboy
 
Ovh hosting
Ovh hostingOvh hosting
Ovh hosting
LanaMason1
 

What's hot (20)

High Performance Front-End Development
High Performance Front-End DevelopmentHigh Performance Front-End Development
High Performance Front-End Development
 
WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...
WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...
WordCamp Atlanta 2014 - CSS For Beginners - By Michael Earley of ATL Squared ...
 
Artdm171 Week5 Css
Artdm171 Week5 CssArtdm171 Week5 Css
Artdm171 Week5 Css
 
New text document
New text documentNew text document
New text document
 
Introduction of web desiging
Introduction of web desigingIntroduction of web desiging
Introduction of web desiging
 
7steps to build a website
7steps to build a website7steps to build a website
7steps to build a website
 
PageSpeed Optimization
PageSpeed OptimizationPageSpeed Optimization
PageSpeed Optimization
 
Front-End Performance Optimization in WordPress
Front-End Performance Optimization in WordPressFront-End Performance Optimization in WordPress
Front-End Performance Optimization in WordPress
 
How to create a website in wordpress
How to create a website in wordpressHow to create a website in wordpress
How to create a website in wordpress
 
Web Standards and Accessibility
Web Standards and AccessibilityWeb Standards and Accessibility
Web Standards and Accessibility
 
Magehack_Autogrid presentation
Magehack_Autogrid presentationMagehack_Autogrid presentation
Magehack_Autogrid presentation
 
KCDC - top free ASP.NET performance tools
KCDC - top free ASP.NET performance toolsKCDC - top free ASP.NET performance tools
KCDC - top free ASP.NET performance tools
 
Introduction to Jquery
Introduction to JqueryIntroduction to Jquery
Introduction to Jquery
 
Responsive Web Development
Responsive Web DevelopmentResponsive Web Development
Responsive Web Development
 
Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"Martin Splitt "A short history of the web"
Martin Splitt "A short history of the web"
 
Php ppt
Php pptPhp ppt
Php ppt
 
Seo basics
Seo basicsSeo basics
Seo basics
 
Famo.us introduction
Famo.us introductionFamo.us introduction
Famo.us introduction
 
Static Site Generation with Hugo and Markdown
Static Site Generation with Hugo and MarkdownStatic Site Generation with Hugo and Markdown
Static Site Generation with Hugo and Markdown
 
Ovh hosting
Ovh hostingOvh hosting
Ovh hosting
 

Similar to Drupal front-end performance

Please dont touch-3.6-jsday
Please dont touch-3.6-jsdayPlease dont touch-3.6-jsday
Please dont touch-3.6-jsday
Francesco Fullone
 
Build Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje JurišićBuild Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje Jurišić
MeetMagentoNY2014
 
Performance optimization - Basics
Performance optimization - BasicsPerformance optimization - Basics
Performance optimization - Basics
Filip Mares
 
Client Side Optimization
Client Side OptimizationClient Side Optimization
Client Side Optimization
Patrick Huesler
 
10 Tips to make your Website lightning-fast - SMX Stockholm 2012
10 Tips to make your Website lightning-fast - SMX Stockholm 201210 Tips to make your Website lightning-fast - SMX Stockholm 2012
10 Tips to make your Website lightning-fast - SMX Stockholm 2012
Bastian Grimm
 
The Need for Speed - SMX Sydney 2013
The Need for Speed - SMX Sydney 2013The Need for Speed - SMX Sydney 2013
The Need for Speed - SMX Sydney 2013
Bastian Grimm
 
Magento x codekit x sass x compass x skeleton responsive grid
Magento x codekit x sass x compass x skeleton responsive gridMagento x codekit x sass x compass x skeleton responsive grid
Magento x codekit x sass x compass x skeleton responsive grid
Arush Sehgal
 
Metarefresh
MetarefreshMetarefresh
Metarefresh
Aakash Bapna
 
Speed!
Speed!Speed!
Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...
Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...
Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...
Izabela Wisniewska
 
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
Bastian Grimm
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
Twinbit
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax Applications
Siarhei Barysiuk
 
@media - Even Faster Web Sites
@media - Even Faster Web Sites@media - Even Faster Web Sites
@media - Even Faster Web Sites
Steve Souders
 
Magento Performance Optimization 101
Magento Performance Optimization 101Magento Performance Optimization 101
Magento Performance Optimization 101
Angus Li
 
Architektura html, css i javascript - Jan Kraus
Architektura html, css i javascript - Jan KrausArchitektura html, css i javascript - Jan Kraus
Architektura html, css i javascript - Jan Kraus
Women in Technology Poland
 
Even faster web sites presentation 3
Even faster web sites presentation 3Even faster web sites presentation 3
Even faster web sites presentation 3
Felipe Lavín
 
How to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! SiteHow to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! Site
Daniel Kanchev
 
Boston Web Performance Meetup: The Render Chain and You
Boston Web Performance Meetup: The Render Chain and YouBoston Web Performance Meetup: The Render Chain and You
Boston Web Performance Meetup: The Render Chain and You
mattringel
 
Modelling Web Performance Optimization - FFSUx
Modelling  Web Performance Optimization - FFSUxModelling  Web Performance Optimization - FFSUx
Modelling Web Performance Optimization - FFSUx
Haribabu Nandyal Padmanaban
 

Similar to Drupal front-end performance (20)

Please dont touch-3.6-jsday
Please dont touch-3.6-jsdayPlease dont touch-3.6-jsday
Please dont touch-3.6-jsday
 
Build Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje JurišićBuild Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje Jurišić
 
Performance optimization - Basics
Performance optimization - BasicsPerformance optimization - Basics
Performance optimization - Basics
 
Client Side Optimization
Client Side OptimizationClient Side Optimization
Client Side Optimization
 
10 Tips to make your Website lightning-fast - SMX Stockholm 2012
10 Tips to make your Website lightning-fast - SMX Stockholm 201210 Tips to make your Website lightning-fast - SMX Stockholm 2012
10 Tips to make your Website lightning-fast - SMX Stockholm 2012
 
The Need for Speed - SMX Sydney 2013
The Need for Speed - SMX Sydney 2013The Need for Speed - SMX Sydney 2013
The Need for Speed - SMX Sydney 2013
 
Magento x codekit x sass x compass x skeleton responsive grid
Magento x codekit x sass x compass x skeleton responsive gridMagento x codekit x sass x compass x skeleton responsive grid
Magento x codekit x sass x compass x skeleton responsive grid
 
Metarefresh
MetarefreshMetarefresh
Metarefresh
 
Speed!
Speed!Speed!
Speed!
 
Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...
Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...
Search Oxford March 2022 - Most common ecommerce mistakes that are killing yo...
 
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
The Need for Speed (5 Performance Optimization Tipps) - brightonSEO 2014
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax Applications
 
@media - Even Faster Web Sites
@media - Even Faster Web Sites@media - Even Faster Web Sites
@media - Even Faster Web Sites
 
Magento Performance Optimization 101
Magento Performance Optimization 101Magento Performance Optimization 101
Magento Performance Optimization 101
 
Architektura html, css i javascript - Jan Kraus
Architektura html, css i javascript - Jan KrausArchitektura html, css i javascript - Jan Kraus
Architektura html, css i javascript - Jan Kraus
 
Even faster web sites presentation 3
Even faster web sites presentation 3Even faster web sites presentation 3
Even faster web sites presentation 3
 
How to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! SiteHow to Speed Up Your Joomla! Site
How to Speed Up Your Joomla! Site
 
Boston Web Performance Meetup: The Render Chain and You
Boston Web Performance Meetup: The Render Chain and YouBoston Web Performance Meetup: The Render Chain and You
Boston Web Performance Meetup: The Render Chain and You
 
Modelling Web Performance Optimization - FFSUx
Modelling  Web Performance Optimization - FFSUxModelling  Web Performance Optimization - FFSUx
Modelling Web Performance Optimization - FFSUx
 

More from ADCI Solutions

Introduction to cron queue
Introduction to cron queueIntroduction to cron queue
Introduction to cron queue
ADCI Solutions
 
Drupal. Advantages and disadvantages. Igor Rodionov.
Drupal. Advantages and disadvantages. Igor Rodionov.Drupal. Advantages and disadvantages. Igor Rodionov.
Drupal. Advantages and disadvantages. Igor Rodionov.
ADCI Solutions
 
Drupal theming must knows. Kate Kalashnikova.
Drupal theming must knows. Kate Kalashnikova.Drupal theming must knows. Kate Kalashnikova.
Drupal theming must knows. Kate Kalashnikova.
ADCI Solutions
 
Drupal. History and Future. Sergey Susikov.
Drupal. History and Future. Sergey Susikov.Drupal. History and Future. Sergey Susikov.
Drupal. History and Future. Sergey Susikov.ADCI Solutions
 
Data Import From the Server of The Central Bank of the Russian Federation: Ho...
Data Import From the Server of The Central Bank of the Russian Federation: Ho...Data Import From the Server of The Central Bank of the Russian Federation: Ho...
Data Import From the Server of The Central Bank of the Russian Federation: Ho...
ADCI Solutions
 
Drupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton ShubkinDrupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton Shubkin
ADCI Solutions
 
Contextly. Dmitry Tartynov
Contextly. Dmitry TartynovContextly. Dmitry Tartynov
Contextly. Dmitry TartynovADCI Solutions
 
Vagrant. Halturin Artem
Vagrant. Halturin ArtemVagrant. Halturin Artem
Vagrant. Halturin Artem
ADCI Solutions
 
Must-knows and common mistakes in theming. Kate Kalashnikova.
Must-knows and common mistakes in theming. Kate Kalashnikova.Must-knows and common mistakes in theming. Kate Kalashnikova.
Must-knows and common mistakes in theming. Kate Kalashnikova.ADCI Solutions
 
Drupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov SergeyDrupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov SergeyADCI Solutions
 
Upgrade with 6 to 7. Denis Komel'kov
Upgrade with 6 to 7. Denis Komel'kovUpgrade with 6 to 7. Denis Komel'kov
Upgrade with 6 to 7. Denis Komel'kovADCI Solutions
 
Responsive website building approach. Olga Smolyankina and Kate Kalashnikova
Responsive website building approach. Olga Smolyankina and Kate KalashnikovaResponsive website building approach. Olga Smolyankina and Kate Kalashnikova
Responsive website building approach. Olga Smolyankina and Kate Kalashnikova
ADCI Solutions
 
Entity. Anton Shubkin and Yaroslav Ponomarev
Entity. Anton Shubkin and Yaroslav PonomarevEntity. Anton Shubkin and Yaroslav Ponomarev
Entity. Anton Shubkin and Yaroslav PonomarevADCI Solutions
 
LESS and even more. Anton Shubkin.
LESS and even more. Anton Shubkin.LESS and even more. Anton Shubkin.
LESS and even more. Anton Shubkin.ADCI Solutions
 
Selenium. Stas Kuzminov
Selenium. Stas KuzminovSelenium. Stas Kuzminov
Selenium. Stas KuzminovADCI Solutions
 

More from ADCI Solutions (15)

Introduction to cron queue
Introduction to cron queueIntroduction to cron queue
Introduction to cron queue
 
Drupal. Advantages and disadvantages. Igor Rodionov.
Drupal. Advantages and disadvantages. Igor Rodionov.Drupal. Advantages and disadvantages. Igor Rodionov.
Drupal. Advantages and disadvantages. Igor Rodionov.
 
Drupal theming must knows. Kate Kalashnikova.
Drupal theming must knows. Kate Kalashnikova.Drupal theming must knows. Kate Kalashnikova.
Drupal theming must knows. Kate Kalashnikova.
 
Drupal. History and Future. Sergey Susikov.
Drupal. History and Future. Sergey Susikov.Drupal. History and Future. Sergey Susikov.
Drupal. History and Future. Sergey Susikov.
 
Data Import From the Server of The Central Bank of the Russian Federation: Ho...
Data Import From the Server of The Central Bank of the Russian Federation: Ho...Data Import From the Server of The Central Bank of the Russian Federation: Ho...
Data Import From the Server of The Central Bank of the Russian Federation: Ho...
 
Drupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton ShubkinDrupal 8: What's new? Anton Shubkin
Drupal 8: What's new? Anton Shubkin
 
Contextly. Dmitry Tartynov
Contextly. Dmitry TartynovContextly. Dmitry Tartynov
Contextly. Dmitry Tartynov
 
Vagrant. Halturin Artem
Vagrant. Halturin ArtemVagrant. Halturin Artem
Vagrant. Halturin Artem
 
Must-knows and common mistakes in theming. Kate Kalashnikova.
Must-knows and common mistakes in theming. Kate Kalashnikova.Must-knows and common mistakes in theming. Kate Kalashnikova.
Must-knows and common mistakes in theming. Kate Kalashnikova.
 
Drupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov SergeyDrupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov Sergey
 
Upgrade with 6 to 7. Denis Komel'kov
Upgrade with 6 to 7. Denis Komel'kovUpgrade with 6 to 7. Denis Komel'kov
Upgrade with 6 to 7. Denis Komel'kov
 
Responsive website building approach. Olga Smolyankina and Kate Kalashnikova
Responsive website building approach. Olga Smolyankina and Kate KalashnikovaResponsive website building approach. Olga Smolyankina and Kate Kalashnikova
Responsive website building approach. Olga Smolyankina and Kate Kalashnikova
 
Entity. Anton Shubkin and Yaroslav Ponomarev
Entity. Anton Shubkin and Yaroslav PonomarevEntity. Anton Shubkin and Yaroslav Ponomarev
Entity. Anton Shubkin and Yaroslav Ponomarev
 
LESS and even more. Anton Shubkin.
LESS and even more. Anton Shubkin.LESS and even more. Anton Shubkin.
LESS and even more. Anton Shubkin.
 
Selenium. Stas Kuzminov
Selenium. Stas KuzminovSelenium. Stas Kuzminov
Selenium. Stas Kuzminov
 

Recently uploaded

Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
BibashShahi
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Neo4j
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
Edge AI and Vision Alliance
 

Recently uploaded (20)

Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
 

Drupal front-end performance

  • 2.
  • 3. ● 44 requests for anonymous user ● 60 requests for administrator
  • 4.
  • 5.
  • 6. ● 28 requests for anonymous user ● 39 requests for administrator
  • 8. ● Better user experience ● Higher conversion rate ● SEO
  • 10. ● 80-95% of performance happens in the front end ● Amazon: 100ms cost 1% of sales ● Yahoo: 400ms improvement ~9% traffic ● Firefox: 2.2s improvement ~15.4% downloads
  • 11. Tools
  • 12. ● Yslow ● PageSpeed ● Chrome DevTools ● Firebug
  • 13. ● Use fewer HTTP requests ● Use CDN ● Avoid empty src or href ● Add Expires header ● Compress components with gzip ● Put CSS at top ● Put JS at bottom ● Make JS and CSS external ● Reduce DNS lookups
  • 14. ● Minify JS and CSS ● Avoid URL redirects ● Remove duplicate CSS and JS ● Configure ETags ● Make AJAX cacheable ● Use GET for AJAX requests ● Reduce number of DOM elements ● Avoid HTTP 404 error ● Reduce cookie size
  • 15. ● Use cookie-free domains ● Avoid AlphaImageLoader filter ● Do not scale images in HTML ● Make favicon small and cacheable
  • 16. Advanced CSS/JS Aggregation ● gzip CSS/JS ● Bundler: groups files together ● CSS/JS compression ● CSS/JS validation ● JS to the footer ● lot-lot more options
  • 17. Advanced CSS/JS Aggregation ● 23.4KB vs 4.5KB gzipped CSS (~80% decrease) ● 93.9KB vs 32.3KB gzipped JS (~65% decrease) ● 23.4KB vs 4.4KB gzip + minify CSS (~81% decrease) ● 93.9KB vs 28.5KB gzip + minify JS (~70% decrease)
  • 18. CSS
  • 19. Write your styles cleverly ● SMACSS ● BEM ● Object Oriented CSS
  • 20. Write your styles cleverly ● SMACSS ● BEM ● Object Oriented CSS ● SASS / Compass ● Less ● ...
  • 22. Do not do a lot to support legacy browsers!!!
  • 25. Remove unused CSS Adaptive Theme
  • 26. Remove unused CSS Tao function tao_css_alter(&$css) { $exclude = array( 'misc/vertical-tabs.css' => FALSE, 'modules/aggregator/aggregator.css' => FALSE, 'modules/block/block.css' => FALSE, 'modules/book/book.css' => FALSE, 'modules/comment/comment.css' => FALSE, //... 'modules/update/update.css' => FALSE, 'modules/user/user.css' => FALSE, ); $css = array_diff_key($css, $exclude); }
  • 27. Use CSS sprites 3.85KB 2.5KB
  • 28. Also ● Icon Fonts ● SVG
  • 29. jQuery Update Default: 1.4.4 (2010.11.11) jQuery Update: 1.7 site’s theme + 1.5 admin pages
  • 31. Do not set 100% quality
  • 32. 100% quality Original JPEG: 640x480px, 49.38KB ● No effects: 151KB ● Rotate 360°: 151KB ● Scale 2000px x 100%, no upscaling: 151KB ● Scale & Crop 480x360px: 139KB
  • 33. 100% quality Original JPEG: 640x480px, 49.38KB ● No effects: 151KB ● Rotate 360°: 151KB ● Scale 2000px x 100%, no upscaling: 151KB ● Scale & Crop 480x360px: 139KB
  • 34. ● Image Lazyloader ● Picture + Breakpoints
  • 35. Markup ● Fences ● Views style settings
  • 36. See also ● CDN ● Magic ● Speedy ● Minify ● Core Library ● UglifyJS