SlideShare una empresa de Scribd logo
1 de 82
Descargar para leer sin conexión
High Performance
  WordPress II
     Fast and secure
What I LOVE About
  WordPress
About Me

• Barry Abrahamson
• Systems Wrangler, Automattic
• http://barry.wordpress.com/contact-me/
WordPress.com
WordPress.com

• Launched in August 2005
WordPress.com

• Launched in August 2005
• ~9 million blogs today
WordPress.com

• Launched in August 2005
• ~9 million blogs today
• Billions of HTTP requests per day
WordPress.com

• Launched in August 2005
• ~9 million blogs today
• Billions of HTTP requests per day
• Billions of MySQL queries per month
What is Performance?
What is Performance?

• Fast
What is Performance?

• Fast
• Scalable
What is Performance?

• Fast
• Scalable
• Secure
Lifecycle
Lifecycle

• Shared hosting ( 95% )
Lifecycle

• Shared hosting ( 95% )
• VPS (Virtual Private Server) ( < 5% )
Lifecycle

• Shared hosting ( 95% )
• VPS (Virtual Private Server) ( < 5% )
• Dedicated Server ( < 2% )
Lifecycle

• Shared hosting ( 95% )
• VPS (Virtual Private Server) ( < 5% )
• Dedicated Server ( < 2% )
• 2 Dedicated Servers ( < 1% )
Lifecycle

• Shared hosting ( 95% )
• VPS (Virtual Private Server) ( < 5% )
• Dedicated Server ( < 2% )
• 2 Dedicated Servers ( < 1% )
• > 2 Dedicated Servers ( < 1% )
Upgrade!
Shared Hosting
Shared Hosting

• FTP access (maybe SSH/SFTP)
Shared Hosting

• FTP access (maybe SSH/SFTP)
• No server management overhead
Shared Hosting

• FTP access (maybe SSH/SFTP)
• No server management overhead
• Less control and fewer options
Shared Hosting

• FTP access (maybe SSH/SFTP)
• No server management overhead
• Less control and fewer options
• Cheap! ($4 - $20/month)
Shared Hosting
Shared Hosting

• Run the latest version of WordPress (easy)
Shared Hosting

• Run the latest version of WordPress (easy)
• http://wordpress.org/hosting/
Shared Hosting

• Run the latest version of WordPress (easy)
• http://wordpress.org/hosting/
• Plugins and Themes directory - http://
  wordpress.org/extend/
Shared Hosting
Shared Hosting

• WP Super Cache
Shared Hosting

• WP Super Cache
• 25 - 50x capacity/throughput increase
Shared Hosting

• WP Super Cache
• 25 - 50x capacity/throughput increase
• Digg, Slashdot,Yahoo Buzz
VPS
VPS
• Virtual Private Server
VPS
• Virtual Private Server
• Between shared and dedicated
VPS
• Virtual Private Server
• Between shared and dedicated
• Specific resources allocated to you (good
  and bad)
VPS
• Virtual Private Server
• Between shared and dedicated
• Specific resources allocated to you (good
  and bad)
• Usually have shell “root” access
VPS
• Virtual Private Server
• Between shared and dedicated
• Specific resources allocated to you (good
  and bad)
• Usually have shell “root” access
• $20 - $50 / month
VPS
VPS
• Run the latest version of WordPress
VPS
• Run the latest version of WordPress
• WP Super Cache
VPS
• Run the latest version of WordPress
• WP Super Cache
• PHP Opcode Cache (APC)
VPS
• Run the latest version of WordPress
• WP Super Cache
• PHP Opcode Cache (APC)
• WordPress persistent object cache
VPS

• Apache alternatives
• CDN
Apache + mod_php
1 request requiring php

• Using mod_php, php
  is loaded for every
  request even if not
  needed
• Most scaling
  problems are because
  of this
VPS
VPS

• Apache alternatives
VPS

• Apache alternatives
• CDN
VPS

• Apache alternatives
• CDN
• W3 Total Cache
VPS

• Apache alternatives
• CDN
• W3 Total Cache
• MySQL tweaking ( http://
  blog.mysqltuner.com/ )
Dedicated Server
Dedicated Server

• Full control
Dedicated Server

• Full control
• Lots of responsibility
Dedicated Server

• Full control
• Lots of responsibility
• Sysadmining required
Dedicated Server

• Full control
• Lots of responsibility
• Sysadmining required
• Can be expensive ($100 - $1000 /month)
2 Servers
2 Servers
• Relatively easy to implement
2 Servers
• Relatively easy to implement
• 1 web server, 1 database server
2 Servers
• Relatively easy to implement
• 1 web server, 1 database server
• Web + database on each
2 Servers
• Relatively easy to implement
• 1 web server, 1 database server
• Web + database on each
• Isolated resources
2 Servers
• Relatively easy to implement
• 1 web server, 1 database server
• Web + database on each
• Isolated resources
• Same as single server from an application
  perspective but now you have to worry
  about network bottlenecks
Server Farm
Server Farm

• HyperDB
Server Farm

• HyperDB
• Object cache with memcached backend
Server Farm

• HyperDB
• Object cache with memcached backend
• Can’t use file-based caches anymore
Server Farm

• HyperDB
• Object cache with memcached backend
• Can’t use file-based caches anymore
• Nananana...Batcache
Server Farm
Server Farm
• Load Balancer - nginx
Server Farm
• Load Balancer - nginx
• Web Server - nginx
Server Farm
• Load Balancer - nginx
• Web Server - nginx
• PHP - php-fpm (now an official PHP
  project!)
Server Farm
• Load Balancer - nginx
• Web Server - nginx
• PHP - php-fpm (now an official PHP
  project!)
• Database - Basic MySQL replication, leave
  all the complicated stuff to HyperDB.
Server Farm
Server Farm

• High availability using spread and
  wackamole
Server Farm

• High availability using spread and
  wackamole
• Scaling from 3 to 300 is relatively easy
  compared to scaling from 2 to 3.
WordPress.com

• ~ 850 servers in 3 datacenters
• ~ 350 web servers
• ~ 300 database servers
• ~ 60 memcached servers (800GB of RAM)
Real World Numbers

• APC
 • Empty cache - 33.5 MB RAM
 • Primed cache - 6.2 MB RAM
 • 60% reduction in CPU utilization
   • 210 8-core servers on WordPress.com
Scaling Tips
Scaling Tips
• Most (all) things you do to scale WordPress
  apply to any web app
Scaling Tips
• Most (all) things you do to scale WordPress
  apply to any web app
• If your bottleneck is the database,
  something is wrong
Scaling Tips
• Most (all) things you do to scale WordPress
  apply to any web app
• If your bottleneck is the database,
  something is wrong
• Measure twice, cut once, measure again
Scaling Tips
• Most (all) things you do to scale WordPress
  apply to any web app
• If your bottleneck is the database,
  something is wrong
• Measure twice, cut once, measure again
• Don’t optimize if you don’t need to
Questions?

Más contenido relacionado

La actualidad más candente

Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)
WordCamp Cape Town
 

La actualidad más candente (20)

WordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sitesWordPress.org & Optimizing Security for your WordPress sites
WordPress.org & Optimizing Security for your WordPress sites
 
Web agencies: An analysis of the OVH infrastructure to optimise your web proj...
Web agencies: An analysis of the OVH infrastructure to optimise your web proj...Web agencies: An analysis of the OVH infrastructure to optimise your web proj...
Web agencies: An analysis of the OVH infrastructure to optimise your web proj...
 
Caching 101
Caching 101Caching 101
Caching 101
 
Scaling WordPress on DigitalOcean
Scaling WordPress on DigitalOceanScaling WordPress on DigitalOcean
Scaling WordPress on DigitalOcean
 
Ithemes presentation
Ithemes presentationIthemes presentation
Ithemes presentation
 
Presentation1
Presentation1Presentation1
Presentation1
 
WordCamp RVA 2011 - Performance & Tuning
WordCamp RVA 2011 - Performance & TuningWordCamp RVA 2011 - Performance & Tuning
WordCamp RVA 2011 - Performance & Tuning
 
Optimizing WordPress (WordCamp Philly 2011)
Optimizing WordPress (WordCamp Philly 2011)Optimizing WordPress (WordCamp Philly 2011)
Optimizing WordPress (WordCamp Philly 2011)
 
Save Time by Managing WordPress from the Command Line
Save Time by Managing WordPress from the Command LineSave Time by Managing WordPress from the Command Line
Save Time by Managing WordPress from the Command Line
 
WP-CLI - WordCamp Miami 2015
WP-CLI - WordCamp Miami 2015WP-CLI - WordCamp Miami 2015
WP-CLI - WordCamp Miami 2015
 
High Performance - Joomla!Days NL 2009 #jd09nl
High Performance - Joomla!Days NL 2009 #jd09nlHigh Performance - Joomla!Days NL 2009 #jd09nl
High Performance - Joomla!Days NL 2009 #jd09nl
 
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
 
Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)Roy foubister (hosting high traffic sites on a tight budget)
Roy foubister (hosting high traffic sites on a tight budget)
 
Wordpress -> Middleman: Lesson learned in the 2-years since migrating
Wordpress -> Middleman: Lesson learned in the 2-years since migratingWordpress -> Middleman: Lesson learned in the 2-years since migrating
Wordpress -> Middleman: Lesson learned in the 2-years since migrating
 
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
EasyEngine - Command-Line tool to manage WordPress Sites on NginxEasyEngine - Command-Line tool to manage WordPress Sites on Nginx
EasyEngine - Command-Line tool to manage WordPress Sites on Nginx
 
Isomorphic WordPress Applications with NodeifyWP
Isomorphic WordPress Applications with NodeifyWPIsomorphic WordPress Applications with NodeifyWP
Isomorphic WordPress Applications with NodeifyWP
 
WordPress + NGINX Best Practices with EasyEngine
WordPress + NGINX Best Practices with EasyEngineWordPress + NGINX Best Practices with EasyEngine
WordPress + NGINX Best Practices with EasyEngine
 
Best Practices for WordPress in Enterprise
Best Practices for WordPress in EnterpriseBest Practices for WordPress in Enterprise
Best Practices for WordPress in Enterprise
 
Anthony Somerset - Site Speed = Success!
Anthony Somerset - Site Speed = Success!Anthony Somerset - Site Speed = Success!
Anthony Somerset - Site Speed = Success!
 
Speeding up your WordPress Site - WordCamp Toronto 2015
Speeding up your WordPress Site - WordCamp Toronto 2015Speeding up your WordPress Site - WordCamp Toronto 2015
Speeding up your WordPress Site - WordCamp Toronto 2015
 

Similar a High Performance WordPress II

Performance_Out.pptx
Performance_Out.pptxPerformance_Out.pptx
Performance_Out.pptx
sanjanabal
 
Performance out
Performance outPerformance out
Performance out
Jack Huang
 
Performance out
Performance outPerformance out
Performance out
Jack Huang
 
Performance out
Performance outPerformance out
Performance out
Jack Huang
 
Performance out
Performance outPerformance out
Performance out
Jack Huang
 

Similar a High Performance WordPress II (20)

Performance out
Performance outPerformance out
Performance out
 
Performance_Out.pptx
Performance_Out.pptxPerformance_Out.pptx
Performance_Out.pptx
 
2 7
2 72 7
2 7
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
title
titletitle
title
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Performance out
Performance outPerformance out
Performance out
 
Apache Performance Tuning: Scaling Out
Apache Performance Tuning: Scaling OutApache Performance Tuning: Scaling Out
Apache Performance Tuning: Scaling Out
 
Simplifying Hyper-V Management for VMware Administrators
Simplifying Hyper-V Management for VMware AdministratorsSimplifying Hyper-V Management for VMware Administrators
Simplifying Hyper-V Management for VMware Administrators
 
A Tale of 2 Systems
A Tale of 2 SystemsA Tale of 2 Systems
A Tale of 2 Systems
 
Scaling Social Games
Scaling Social GamesScaling Social Games
Scaling Social Games
 
DrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalabilityDrupalCampLA 2014 - Drupal backend performance and scalability
DrupalCampLA 2014 - Drupal backend performance and scalability
 
High Performance Drupal
High Performance DrupalHigh Performance Drupal
High Performance Drupal
 

Último

Último (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 

High Performance WordPress II