SlideShare une entreprise Scribd logo
1  sur  56
PRESENTED TO WORDCAMP OMAHA
BY ANDY MELICHAR
FIRST THINGS FIRST
A LITTLE ABOUT ME…
THIS IS MY FIRST WORCAMP
SPEAKING GIG… WOOO!!
Thanks for the opportunity!
I LOVE
KARAOKE.
Serial
Hobbyist
Current obsession:
HAM Radio.
My callsign is KEØATA
I just might
know my way
around the
kitchen…
Look familiar?
Omaha, born
and raised!
And now I live in
Ypsilanti, Michigan
What the heck does a serial hobbyist,
karaoke-singing culinary guy know
about WordPress?
Director of Web
Development and
Agile Product Owner
for A2 Hosting
We spend a lot of time on making
WordPress better for our customers!
Ask me about Agile/Scrum!
From the Perspective of a Hosting
Company…
 A high percentage of our current and new customers are
WordPress users, and the number keeps rising
 Being on the hosting end, we can dig into common
performance issues MUCH deeper because we know our web
servers inside and out
 The very high percentage of WordPress related support
requests that we receive are performance related, so we’ve
looked at many different ways to improve performance
SECOND THINGS SECOND
TIME FOR YOU ALL TO FESS UP!
How many of you…
 Have attempted to optimize your WP Site?
 Have installed/configured a caching plugin?
 Know what a CDN is?
 Have added configurations to an .htaccess file
 Are running your own server (VPS/dedicated/cloud) ?
Why should we care about
performance?
Some statistics…
 40% of people abandon a website that takes more
than 3 seconds to load
 A 1 second delay in page response can result in a 7%
reduction in conversions
 If an e-commerce site is making $100,000 per day, a
1 second page delay could potentially cost you $2.5
million in lost sales every year
Source: https://blog.kissmetrics.com/loading-time/
Bottom line…
 A poorly optimized website can cost you real $$ in
support and hosting costs
 By diving into performance and optimization, you’ll
learn more about WordPress, and more about web
systems and infrastructure
 By becoming a performance expert, you’ll be able to
deliver a much more reliable, robust product to your
customers!
How do you measure performance?
Performance Measurement Tools
 Gtmetrix.com – my favorite!
 Free
 Easy to use/understand
 Has a WordPress Plugin
 WebPageTest.org
 Also Free
 Lots of great detailed information
 LoadImpact.com
 Free + Paid plans
 Simulates multiple, concurrent users hitting your site
What Measurements Matter?
 Page Load Time
 Most representative of the customer experience
 Best “overall” performance metric
 Total Page Size
 Good to keep an eye on this for major problems such
as
Uncompressed images
High-resource themes/plugins
Let’s Look at our Before
Where can we
“haz more performanz?”
Areas of Focus for Performance
 Optimizations within WordPress
 Our Web Server Environment
 External Services
Optimizations within WordPress
 Clean house!
Get rid of unused themes/plugins/etc.
Don’t just deactivate… DELETE
Be sure everything is up-to-date
Most recent WordPress version
Plugins are all updated to latest version
Optimizations within WordPress
 Utilize a Caching Plugin
Optimizations within WordPress
 Utilize a Caching Plugin
W3 Total Cache or Fix-W3TC
Free and HIGHLY configurable
WP Rocket
Paid, but comes well-recommended
WP Super Cache
Robust and easy to use
The Client/Server Process
WITHOUT Caching
The orange arrows repeat for every:
• Image
• CSS File
• JavaScript File
• Video
• Etc.
The Client/Server Process
WITH Caching
With Caching, we skip a bunch of steps!
• File System
• PHP
• Database
Enable Caching – Results (Gtmetrix)
Before Caching
After Caching
25 Concurrent Virtual Users
Using LoadImpact.com
No Caching: 1.5s Page Load Time Caching: 180ms Page Load Time
Optimizations within WordPress
 Turn on Minification
 Most caching plugins will have an option for this, but it
may not be enabled by default
 You DO have to be careful, because Minification can
break some themes/plugins, YMMV
Minification – JQuery Before / After
Before
10,220 Lines
261KB File Size
After
3 (LONG) Lines
85KB File Size
~60%
Reduction
In size
Optimizations within WordPress
 Turn on GZip Compression
 Vast majority of hosts (especially shared hosts) support
GZip from the server level, it just needs to be enabled
 Easily enabled via .htaccess rules
 Most caching plugins will also have an option to
enable GZip compression
https://codex.wordpress.org/Output_Compression
Enable GZip – Results (Gtmetrix)
Before Gzip
After Gzip
Optimizations within WordPress
 Optimize Images
 Images are a significant amount of data that has to get
transferred from the server to the client
 Compress them!
Before you upload
During upload with a plugin, such as WP Smush
Now let’s look at the server!
Server-Side Optimizations for
WordPress
 Add “Expires” headers for static content
 This tells the user’s browser to cache static files locally
so they don’t have to transferred repeatedly
 Done in either .htaccess or nginx config
 Plugins like W3 Total Cache can help you do this,
though you may still need to edit an .htaccess or nginx
config file
Server-Side Optimizations for
WordPress
 Switch Web Servers
 Apache – most common, not as robust
 Nginx – increasingly more common, way better at serving
up static files
 LiteSpeed – licensed software, drop in replacement for
Apache, does well with high volume, concurrent traffic
Server-Side Optimizations for
WordPress
 Switch Web Servers
 To switch, typically need to be on your own server
(VPS/Dedicated/Cloud) OR you can find a host that
specifically offers hosting that uses one of the alternative
web servers
Server-Side Optimizations for
WordPress
 Enable APC/OpCache
 APC (for PHP < 5.5) or OpCache (for PHP 5.5 and greater)
reduces the amount of time it takes the server to process
PHP files
 Few shared hosts have this enabled on their servers
 Typically need to have a VPS or Dedicated server with APC
or OpCache Installed
 Once enabled on the server, nothing to configure or turn
on in WordPress
External Service Optimizations
AKA CDN’S
What is a CDN?
(Content Delivery Network)
 CDN Sits between the server and the client,
and handles serving up some/all of your files
 CDN’s typically have a large infrastructure of
multiple servers located in strategic
geographic locations
What is a CDN?
(Content Delivery Network)
 Benefits:
They can reduce the load on your server
They can shorten the distance (hops) it takes for
the client to get your data
They also can act as a protection tool for things
like DDoS (Distributed Denial of Service) attacks,
brute force attacks, and other attack vectors
Without a CDN
Remember this mess?
With a CDN
Things flow
differently!
With a CDN
Things flow
differently!
DDoS Attack
The traffic never
hits your server!
Some Popular CDNs
 CloudFlare
 MaxCDN
 CacheFly
 Softlayer
 More in the Codex:
https://codex.wordpress.org/WordPress_Optimization
#Use_a_content_Delivery_Network_.28CDN.29
The Downside of CDNs
 To be effective they required DNS entry
changes
 Typically also need to have a corresponding
WordPress plugin to talk to the CDN and
coordinate content updates
 Depending on how much protection / caching
/ etc, can cost $$$
What all did we do to our test site?
 Enabled GZip
 Added Expires
Headers
 Installed W3 Total
Cache
 Turned on
Minification
 Enabled CloudFlare
CDN
 Utilized nginx
 Enabled opCache
The Results!
What’s up with that ‘C’ ?
What’s up with that ‘C’ ?
 If we wanted to further optimize, we could
bring these JS/CSS files local so they would
get Minified/GZipped
Look a little closer at our “After”
 On a repeat view we are REALLY flying
 Only 1 request needed
 Under 1s load time
 Bytes in: 16KB!
Final Thoughts
 There are LOTS of options to optimize/gain
performance
 You don’t have to do them all
 Many people in the WordPress community
know how to help you with these
configurations
 The Codex is your friend!
Questions?

Contenu connexe

Tendances

Coding with jetpack
Coding with jetpackCoding with jetpack
Coding with jetpackRich Collier
 
Leeward WordPress Meetup- Caching and Website Speed
Leeward WordPress Meetup- Caching and Website SpeedLeeward WordPress Meetup- Caching and Website Speed
Leeward WordPress Meetup- Caching and Website SpeedArlen Nagata
 
Optimizing WordPress - WordPress SF Meetup April 2012
Optimizing WordPress -  WordPress SF Meetup April 2012Optimizing WordPress -  WordPress SF Meetup April 2012
Optimizing WordPress - WordPress SF Meetup April 2012Ben Metcalfe
 
Measuring Web Performance
Measuring Web Performance Measuring Web Performance
Measuring Web Performance Dave Olsen
 
Make Local WordPress Development Simple
Make Local WordPress Development SimpleMake Local WordPress Development Simple
Make Local WordPress Development SimpleWP Engine
 
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasCtrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasResellerClub
 
Choosing WordPress Plugins (WordCamp Raleigh 2016)
Choosing WordPress Plugins (WordCamp Raleigh 2016)Choosing WordPress Plugins (WordCamp Raleigh 2016)
Choosing WordPress Plugins (WordCamp Raleigh 2016)andisites
 
SEMCON 2013 - WordPress Optimization
SEMCON 2013 - WordPress OptimizationSEMCON 2013 - WordPress Optimization
SEMCON 2013 - WordPress OptimizationMike Lopez
 
Wordpress optimization
Wordpress optimizationWordpress optimization
Wordpress optimizationpaudelvinay
 
Ship WordPress Projects Like a Boss
Ship WordPress Projects Like a BossShip WordPress Projects Like a Boss
Ship WordPress Projects Like a BossSiteGround.com
 
WordPress Server Security
WordPress Server SecurityWordPress Server Security
WordPress Server SecurityPeter Baylies
 
WordPress Migrations 101 - WordCamp Orlando
WordPress Migrations 101 - WordCamp OrlandoWordPress Migrations 101 - WordCamp Orlando
WordPress Migrations 101 - WordCamp OrlandoSiteGround.com
 
Best Friend || Worst Enemy: WordPress Multisite
Best Friend || Worst Enemy: WordPress MultisiteBest Friend || Worst Enemy: WordPress Multisite
Best Friend || Worst Enemy: WordPress MultisiteTaylor McCaslin
 
Optimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get thereOptimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get thereStephen Bell
 
Optimizing the performance of WordPress
Optimizing the performance of WordPressOptimizing the performance of WordPress
Optimizing the performance of WordPressJosh Highland Giese
 

Tendances (20)

Coding with jetpack
Coding with jetpackCoding with jetpack
Coding with jetpack
 
Caching 101
Caching 101Caching 101
Caching 101
 
Web performance
Web performanceWeb performance
Web performance
 
Ithemes presentation
Ithemes presentationIthemes presentation
Ithemes presentation
 
Leeward WordPress Meetup- Caching and Website Speed
Leeward WordPress Meetup- Caching and Website SpeedLeeward WordPress Meetup- Caching and Website Speed
Leeward WordPress Meetup- Caching and Website Speed
 
Optimizing WordPress - WordPress SF Meetup April 2012
Optimizing WordPress -  WordPress SF Meetup April 2012Optimizing WordPress -  WordPress SF Meetup April 2012
Optimizing WordPress - WordPress SF Meetup April 2012
 
Measuring Web Performance
Measuring Web Performance Measuring Web Performance
Measuring Web Performance
 
Make Local WordPress Development Simple
Make Local WordPress Development SimpleMake Local WordPress Development Simple
Make Local WordPress Development Simple
 
Optimizing wp
Optimizing wpOptimizing wp
Optimizing wp
 
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin ThomasCtrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
Ctrl+F5 Bangalore 2017: Super charge you word press website by Justin Thomas
 
Speed!
Speed!Speed!
Speed!
 
Choosing WordPress Plugins (WordCamp Raleigh 2016)
Choosing WordPress Plugins (WordCamp Raleigh 2016)Choosing WordPress Plugins (WordCamp Raleigh 2016)
Choosing WordPress Plugins (WordCamp Raleigh 2016)
 
SEMCON 2013 - WordPress Optimization
SEMCON 2013 - WordPress OptimizationSEMCON 2013 - WordPress Optimization
SEMCON 2013 - WordPress Optimization
 
Wordpress optimization
Wordpress optimizationWordpress optimization
Wordpress optimization
 
Ship WordPress Projects Like a Boss
Ship WordPress Projects Like a BossShip WordPress Projects Like a Boss
Ship WordPress Projects Like a Boss
 
WordPress Server Security
WordPress Server SecurityWordPress Server Security
WordPress Server Security
 
WordPress Migrations 101 - WordCamp Orlando
WordPress Migrations 101 - WordCamp OrlandoWordPress Migrations 101 - WordCamp Orlando
WordPress Migrations 101 - WordCamp Orlando
 
Best Friend || Worst Enemy: WordPress Multisite
Best Friend || Worst Enemy: WordPress MultisiteBest Friend || Worst Enemy: WordPress Multisite
Best Friend || Worst Enemy: WordPress Multisite
 
Optimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get thereOptimizing Your WordPress Site: Why speed matters, and how to get there
Optimizing Your WordPress Site: Why speed matters, and how to get there
 
Optimizing the performance of WordPress
Optimizing the performance of WordPressOptimizing the performance of WordPress
Optimizing the performance of WordPress
 

En vedette

Customize Your WordPress Theme the Right Way
Customize Your WordPress Theme the Right WayCustomize Your WordPress Theme the Right Way
Customize Your WordPress Theme the Right WayDustin Hartzler
 
Lecture - (WordPress) Usability Issues
Lecture - (WordPress) Usability IssuesLecture - (WordPress) Usability Issues
Lecture - (WordPress) Usability IssuesRadka Nacheva
 
How WordPress Changed My Life! - Ricky Blacker
How WordPress Changed My Life! - Ricky BlackerHow WordPress Changed My Life! - Ricky Blacker
How WordPress Changed My Life! - Ricky BlackerWordCamp Sydney
 
The Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano EditionThe Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano EditionTorsten Landsiedel
 
State of the Word 2013
State of the Word 2013State of the Word 2013
State of the Word 2013photomatt
 
What is the Responsibility of Plugin Developers?
What is the Responsibility of Plugin Developers?What is the Responsibility of Plugin Developers?
What is the Responsibility of Plugin Developers?Takayuki Miyoshi
 
WordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and VagrantWordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and VagrantMitch Canter
 
Honey - You're Not Even Responsive - Sharon France
Honey - You're Not Even Responsive - Sharon FranceHoney - You're Not Even Responsive - Sharon France
Honey - You're Not Even Responsive - Sharon FranceWordCamp Sydney
 
Architecture Behind WordPress.com
Architecture Behind WordPress.comArchitecture Behind WordPress.com
Architecture Behind WordPress.comphotomatt
 
Future-proofing your WordPress site - WordCamp Sydney 2014
Future-proofing your WordPress site - WordCamp Sydney 2014Future-proofing your WordPress site - WordCamp Sydney 2014
Future-proofing your WordPress site - WordCamp Sydney 2014Jordan Gillman
 
Tools to Automate & Elevate Your Marketing Efferts
Tools to Automate & Elevate Your Marketing Efferts Tools to Automate & Elevate Your Marketing Efferts
Tools to Automate & Elevate Your Marketing Efferts Sarah Kloth
 
The power of a video library
The power of a video libraryThe power of a video library
The power of a video libraryLauren Jeffcoat
 
Anthony Somerset - Site Speed = Success!
Anthony Somerset - Site Speed = Success!Anthony Somerset - Site Speed = Success!
Anthony Somerset - Site Speed = Success!WordCamp Cape Town
 
Wordpress security best practices - WordCamp Waukesha 2017
Wordpress security best practices - WordCamp Waukesha 2017Wordpress security best practices - WordCamp Waukesha 2017
Wordpress security best practices - WordCamp Waukesha 2017vdrover
 
WordPress 4.4 and Beyond
WordPress 4.4 and BeyondWordPress 4.4 and Beyond
WordPress 4.4 and BeyondScott Taylor
 
WordPress: Getting Under the Hood
WordPress: Getting Under the HoodWordPress: Getting Under the Hood
WordPress: Getting Under the HoodScott Taylor
 
Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Harish Ganesan
 
State of the Word 2016
State of the Word 2016State of the Word 2016
State of the Word 2016photomatt
 

En vedette (20)

Customize Your WordPress Theme the Right Way
Customize Your WordPress Theme the Right WayCustomize Your WordPress Theme the Right Way
Customize Your WordPress Theme the Right Way
 
Lecture - (WordPress) Usability Issues
Lecture - (WordPress) Usability IssuesLecture - (WordPress) Usability Issues
Lecture - (WordPress) Usability Issues
 
How WordPress Changed My Life! - Ricky Blacker
How WordPress Changed My Life! - Ricky BlackerHow WordPress Changed My Life! - Ricky Blacker
How WordPress Changed My Life! - Ricky Blacker
 
The Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano EditionThe Child Theme Dilemma (EN) - Milano Edition
The Child Theme Dilemma (EN) - Milano Edition
 
State of the Word 2013
State of the Word 2013State of the Word 2013
State of the Word 2013
 
What is the Responsibility of Plugin Developers?
What is the Responsibility of Plugin Developers?What is the Responsibility of Plugin Developers?
What is the Responsibility of Plugin Developers?
 
WordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and VagrantWordPress Development with VVV, VV, and Vagrant
WordPress Development with VVV, VV, and Vagrant
 
Honey - You're Not Even Responsive - Sharon France
Honey - You're Not Even Responsive - Sharon FranceHoney - You're Not Even Responsive - Sharon France
Honey - You're Not Even Responsive - Sharon France
 
Architecture Behind WordPress.com
Architecture Behind WordPress.comArchitecture Behind WordPress.com
Architecture Behind WordPress.com
 
Future-proofing your WordPress site - WordCamp Sydney 2014
Future-proofing your WordPress site - WordCamp Sydney 2014Future-proofing your WordPress site - WordCamp Sydney 2014
Future-proofing your WordPress site - WordCamp Sydney 2014
 
Tools to Automate & Elevate Your Marketing Efferts
Tools to Automate & Elevate Your Marketing Efferts Tools to Automate & Elevate Your Marketing Efferts
Tools to Automate & Elevate Your Marketing Efferts
 
The power of a video library
The power of a video libraryThe power of a video library
The power of a video library
 
Anthony Somerset - Site Speed = Success!
Anthony Somerset - Site Speed = Success!Anthony Somerset - Site Speed = Success!
Anthony Somerset - Site Speed = Success!
 
Wordpress security best practices - WordCamp Waukesha 2017
Wordpress security best practices - WordCamp Waukesha 2017Wordpress security best practices - WordCamp Waukesha 2017
Wordpress security best practices - WordCamp Waukesha 2017
 
WordPress 4.4 and Beyond
WordPress 4.4 and BeyondWordPress 4.4 and Beyond
WordPress 4.4 and Beyond
 
WordPress: Getting Under the Hood
WordPress: Getting Under the HoodWordPress: Getting Under the Hood
WordPress: Getting Under the Hood
 
Word camp 2012
Word camp 2012Word camp 2012
Word camp 2012
 
Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS Architecting an Highly Available and Scalable WordPress Site in AWS
Architecting an Highly Available and Scalable WordPress Site in AWS
 
State of the Word 2016
State of the Word 2016State of the Word 2016
State of the Word 2016
 
Website Redesign A-Z
Website Redesign A-ZWebsite Redesign A-Z
Website Redesign A-Z
 

Similaire à I Can Haz More Performanz?

Speed Up WordPress Websites - Part 1 - WordPress Cairo Meetup
Speed Up WordPress Websites - Part 1 - WordPress Cairo MeetupSpeed Up WordPress Websites - Part 1 - WordPress Cairo Meetup
Speed Up WordPress Websites - Part 1 - WordPress Cairo MeetupAhmed Mohammed Nagdy
 
Guide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdf
Guide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdfGuide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdf
Guide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdfpersuebusiness
 
Website Performance
Website PerformanceWebsite Performance
Website PerformanceHugo Fonseca
 
Make Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedMake Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedAndy Kucharski
 
Building faster websites: web performance with WordPress
Building faster websites: web performance with WordPressBuilding faster websites: web performance with WordPress
Building faster websites: web performance with WordPressJohannes Siipola
 
How to Build a Website Similar to WorldStarHipHop
How to Build a Website Similar to WorldStarHipHopHow to Build a Website Similar to WorldStarHipHop
How to Build a Website Similar to WorldStarHipHopTarik Pierce
 
Introduction to Optimizing WordPress for Website Speed
Introduction to Optimizing WordPress for Website SpeedIntroduction to Optimizing WordPress for Website Speed
Introduction to Optimizing WordPress for Website SpeedNile Flores
 
Choosing the best hosting package for WordPress
Choosing the best hosting package for WordPressChoosing the best hosting package for WordPress
Choosing the best hosting package for WordPressZero Point Development
 
Learn WordPress - Live Session 2 Slides
Learn WordPress - Live Session 2 SlidesLearn WordPress - Live Session 2 Slides
Learn WordPress - Live Session 2 SlidesAhmed Mohammed Nagdy
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for ScalabilityTuenti
 
Ajax For Scalability
Ajax For ScalabilityAjax For Scalability
Ajax For Scalabilityerikschultink
 
Tips for a Faster Website
Tips for a Faster WebsiteTips for a Faster Website
Tips for a Faster WebsiteRayed Alrashed
 
Performance Optimization in Drupal 8
Performance Optimization in Drupal 8Performance Optimization in Drupal 8
Performance Optimization in Drupal 8valuebound
 
Joomla! Performance on Steroids
Joomla! Performance on SteroidsJoomla! Performance on Steroids
Joomla! Performance on SteroidsSiteGround.com
 
How to Speed Up WooCommerce Performance?
How to Speed Up WooCommerce Performance?How to Speed Up WooCommerce Performance?
How to Speed Up WooCommerce Performance?WPWeb Infotech
 
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Amazon Web Services
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019Anam Ahmed
 

Similaire à I Can Haz More Performanz? (20)

Show Me The Cache!
Show Me The Cache!Show Me The Cache!
Show Me The Cache!
 
Speed Up WordPress Websites - Part 1 - WordPress Cairo Meetup
Speed Up WordPress Websites - Part 1 - WordPress Cairo MeetupSpeed Up WordPress Websites - Part 1 - WordPress Cairo Meetup
Speed Up WordPress Websites - Part 1 - WordPress Cairo Meetup
 
Guide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdf
Guide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdfGuide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdf
Guide 4 - How To Dramatically Speed Up Your Website Using A Caching Plugin.pdf
 
Website Performance
Website PerformanceWebsite Performance
Website Performance
 
Tips to improve your website performance
Tips to improve your website performanceTips to improve your website performance
Tips to improve your website performance
 
23 Ways To Speed Up WordPress
23 Ways To Speed Up WordPress23 Ways To Speed Up WordPress
23 Ways To Speed Up WordPress
 
Make Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speedMake Drupal Run Fast - increase page load speed
Make Drupal Run Fast - increase page load speed
 
Building faster websites: web performance with WordPress
Building faster websites: web performance with WordPressBuilding faster websites: web performance with WordPress
Building faster websites: web performance with WordPress
 
How to Build a Website Similar to WorldStarHipHop
How to Build a Website Similar to WorldStarHipHopHow to Build a Website Similar to WorldStarHipHop
How to Build a Website Similar to WorldStarHipHop
 
Introduction to Optimizing WordPress for Website Speed
Introduction to Optimizing WordPress for Website SpeedIntroduction to Optimizing WordPress for Website Speed
Introduction to Optimizing WordPress for Website Speed
 
Choosing the best hosting package for WordPress
Choosing the best hosting package for WordPressChoosing the best hosting package for WordPress
Choosing the best hosting package for WordPress
 
Learn WordPress - Live Session 2 Slides
Learn WordPress - Live Session 2 SlidesLearn WordPress - Live Session 2 Slides
Learn WordPress - Live Session 2 Slides
 
AJAX for Scalability
AJAX for ScalabilityAJAX for Scalability
AJAX for Scalability
 
Ajax For Scalability
Ajax For ScalabilityAjax For Scalability
Ajax For Scalability
 
Tips for a Faster Website
Tips for a Faster WebsiteTips for a Faster Website
Tips for a Faster Website
 
Performance Optimization in Drupal 8
Performance Optimization in Drupal 8Performance Optimization in Drupal 8
Performance Optimization in Drupal 8
 
Joomla! Performance on Steroids
Joomla! Performance on SteroidsJoomla! Performance on Steroids
Joomla! Performance on Steroids
 
How to Speed Up WooCommerce Performance?
How to Speed Up WooCommerce Performance?How to Speed Up WooCommerce Performance?
How to Speed Up WooCommerce Performance?
 
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
Dynamic Content Acceleration: Lightning Fast Web Apps with Amazon CloudFront ...
 
WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019WordPress At Scale. WordCamp Dhaka 2019
WordPress At Scale. WordCamp Dhaka 2019
 

Dernier

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 

Dernier (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 

I Can Haz More Performanz?

  • 1. PRESENTED TO WORDCAMP OMAHA BY ANDY MELICHAR
  • 2. FIRST THINGS FIRST A LITTLE ABOUT ME…
  • 3. THIS IS MY FIRST WORCAMP SPEAKING GIG… WOOO!! Thanks for the opportunity!
  • 6. I just might know my way around the kitchen… Look familiar?
  • 7. Omaha, born and raised! And now I live in Ypsilanti, Michigan
  • 8. What the heck does a serial hobbyist, karaoke-singing culinary guy know about WordPress?
  • 9. Director of Web Development and Agile Product Owner for A2 Hosting We spend a lot of time on making WordPress better for our customers! Ask me about Agile/Scrum!
  • 10. From the Perspective of a Hosting Company…  A high percentage of our current and new customers are WordPress users, and the number keeps rising  Being on the hosting end, we can dig into common performance issues MUCH deeper because we know our web servers inside and out  The very high percentage of WordPress related support requests that we receive are performance related, so we’ve looked at many different ways to improve performance
  • 11. SECOND THINGS SECOND TIME FOR YOU ALL TO FESS UP!
  • 12. How many of you…  Have attempted to optimize your WP Site?  Have installed/configured a caching plugin?  Know what a CDN is?  Have added configurations to an .htaccess file  Are running your own server (VPS/dedicated/cloud) ?
  • 13. Why should we care about performance?
  • 14. Some statistics…  40% of people abandon a website that takes more than 3 seconds to load  A 1 second delay in page response can result in a 7% reduction in conversions  If an e-commerce site is making $100,000 per day, a 1 second page delay could potentially cost you $2.5 million in lost sales every year Source: https://blog.kissmetrics.com/loading-time/
  • 15. Bottom line…  A poorly optimized website can cost you real $$ in support and hosting costs  By diving into performance and optimization, you’ll learn more about WordPress, and more about web systems and infrastructure  By becoming a performance expert, you’ll be able to deliver a much more reliable, robust product to your customers!
  • 16. How do you measure performance?
  • 17. Performance Measurement Tools  Gtmetrix.com – my favorite!  Free  Easy to use/understand  Has a WordPress Plugin  WebPageTest.org  Also Free  Lots of great detailed information  LoadImpact.com  Free + Paid plans  Simulates multiple, concurrent users hitting your site
  • 18. What Measurements Matter?  Page Load Time  Most representative of the customer experience  Best “overall” performance metric  Total Page Size  Good to keep an eye on this for major problems such as Uncompressed images High-resource themes/plugins
  • 19. Let’s Look at our Before
  • 20. Where can we “haz more performanz?”
  • 21. Areas of Focus for Performance  Optimizations within WordPress  Our Web Server Environment  External Services
  • 22. Optimizations within WordPress  Clean house! Get rid of unused themes/plugins/etc. Don’t just deactivate… DELETE Be sure everything is up-to-date Most recent WordPress version Plugins are all updated to latest version
  • 23. Optimizations within WordPress  Utilize a Caching Plugin
  • 24. Optimizations within WordPress  Utilize a Caching Plugin W3 Total Cache or Fix-W3TC Free and HIGHLY configurable WP Rocket Paid, but comes well-recommended WP Super Cache Robust and easy to use
  • 26. The orange arrows repeat for every: • Image • CSS File • JavaScript File • Video • Etc.
  • 28. With Caching, we skip a bunch of steps! • File System • PHP • Database
  • 29. Enable Caching – Results (Gtmetrix) Before Caching After Caching
  • 30. 25 Concurrent Virtual Users Using LoadImpact.com No Caching: 1.5s Page Load Time Caching: 180ms Page Load Time
  • 31. Optimizations within WordPress  Turn on Minification  Most caching plugins will have an option for this, but it may not be enabled by default  You DO have to be careful, because Minification can break some themes/plugins, YMMV
  • 32. Minification – JQuery Before / After Before 10,220 Lines 261KB File Size After 3 (LONG) Lines 85KB File Size ~60% Reduction In size
  • 33. Optimizations within WordPress  Turn on GZip Compression  Vast majority of hosts (especially shared hosts) support GZip from the server level, it just needs to be enabled  Easily enabled via .htaccess rules  Most caching plugins will also have an option to enable GZip compression https://codex.wordpress.org/Output_Compression
  • 34. Enable GZip – Results (Gtmetrix) Before Gzip After Gzip
  • 35. Optimizations within WordPress  Optimize Images  Images are a significant amount of data that has to get transferred from the server to the client  Compress them! Before you upload During upload with a plugin, such as WP Smush
  • 36. Now let’s look at the server!
  • 37. Server-Side Optimizations for WordPress  Add “Expires” headers for static content  This tells the user’s browser to cache static files locally so they don’t have to transferred repeatedly  Done in either .htaccess or nginx config  Plugins like W3 Total Cache can help you do this, though you may still need to edit an .htaccess or nginx config file
  • 38. Server-Side Optimizations for WordPress  Switch Web Servers  Apache – most common, not as robust  Nginx – increasingly more common, way better at serving up static files  LiteSpeed – licensed software, drop in replacement for Apache, does well with high volume, concurrent traffic
  • 39. Server-Side Optimizations for WordPress  Switch Web Servers  To switch, typically need to be on your own server (VPS/Dedicated/Cloud) OR you can find a host that specifically offers hosting that uses one of the alternative web servers
  • 40. Server-Side Optimizations for WordPress  Enable APC/OpCache  APC (for PHP < 5.5) or OpCache (for PHP 5.5 and greater) reduces the amount of time it takes the server to process PHP files  Few shared hosts have this enabled on their servers  Typically need to have a VPS or Dedicated server with APC or OpCache Installed  Once enabled on the server, nothing to configure or turn on in WordPress
  • 42. What is a CDN? (Content Delivery Network)  CDN Sits between the server and the client, and handles serving up some/all of your files  CDN’s typically have a large infrastructure of multiple servers located in strategic geographic locations
  • 43. What is a CDN? (Content Delivery Network)  Benefits: They can reduce the load on your server They can shorten the distance (hops) it takes for the client to get your data They also can act as a protection tool for things like DDoS (Distributed Denial of Service) attacks, brute force attacks, and other attack vectors
  • 45. With a CDN Things flow differently!
  • 46. With a CDN Things flow differently!
  • 47. DDoS Attack The traffic never hits your server!
  • 48. Some Popular CDNs  CloudFlare  MaxCDN  CacheFly  Softlayer  More in the Codex: https://codex.wordpress.org/WordPress_Optimization #Use_a_content_Delivery_Network_.28CDN.29
  • 49. The Downside of CDNs  To be effective they required DNS entry changes  Typically also need to have a corresponding WordPress plugin to talk to the CDN and coordinate content updates  Depending on how much protection / caching / etc, can cost $$$
  • 50. What all did we do to our test site?  Enabled GZip  Added Expires Headers  Installed W3 Total Cache  Turned on Minification  Enabled CloudFlare CDN  Utilized nginx  Enabled opCache
  • 52. What’s up with that ‘C’ ?
  • 53. What’s up with that ‘C’ ?  If we wanted to further optimize, we could bring these JS/CSS files local so they would get Minified/GZipped
  • 54. Look a little closer at our “After”  On a repeat view we are REALLY flying  Only 1 request needed  Under 1s load time  Bytes in: 16KB!
  • 55. Final Thoughts  There are LOTS of options to optimize/gain performance  You don’t have to do them all  Many people in the WordPress community know how to help you with these configurations  The Codex is your friend!

Notes de l'éditeur

  1. If that kitchen doesn’t look familiar go downstairs! I unfortunately had to cut my studies short when I moved to Michigan.
  2. One of the nice things about working for a hosting company is that I, and my colleagues, get to know WordPress really well.
  3. (talk through each step)
  4. Talk through each step and explain how it is a much shorter process.
  5. On the GTMetrix we can see a direct result in our page load time. It’s not huge, but my website also isn’t very complex, so it’s harder for us to see enormous improvements. The other thing to remember about caching, is that when it REALLY shines, is with concurrent website traffic. Let’s take a look!
  6. Here’s where we really see the difference – this test was conducted with LoadImpact sending 25 users to my site over 5 minutes.
  7. Jquery is a fairly common javascript library used in many frameworks and themes. If you compare the the full, development-ready version of Jquery against the same version run through minification, you can see the difference in size.
  8. Here’s a before and after, you can see the direct results in both our PageSpeed and Yslow scores, but also the Total Page Size is reduced by about a third.
  9. Without a CDN, every connection from the client is DIRECTLY to your server.
  10. The first time we hit a page, we go through the whole cycle so the CDN can capture the content from your site.
  11. The second time, the CDN can take over and serves up your content without even hitting your server. Occasionally the CDN will hit your server to check that it is still serving up valid content, and will update it’s internal cache if it detects a change. Also of note… there are many types of CDN’s, some of them work differently than others or have different subscription levels. For example, some CDN’s only serve up images and JS/CSS files, and it will still contact your server for the page content. This still saves resources on your server and speeds up the page loading time because we aren’t relying on our server to do all the work.
  12. Now let’s say your CDN service also provides DDoS / Brute Force protection. In this case when a DDoS attack commences, the attack is absorbed by the CDN, and it only routes valid traffic back to the client. Why is this important for optimization? Because your site doesn’t go down!!
  13. Where we really see a benefit is in the repeat view…