SlideShare a Scribd company logo
1 of 45
Download to read offline
I'm Jason Cosper
I work at WP Engine
I created Hipster Ipsum
I organize the Bakersfield WordPress Meetup
I maintain the Force Strong Passwords plugin
@boogah
When I gave this talk
five months ago...
I was pushing HHVM
Hard
The numbers were compelling
WordPress 4.1.x with 20 concurrent users.
• Requests per second
• PHP 5.5: 256
• PHP 7: 627
• HHVM 3.7: 666
• Latency
• PHP 5.5: 78 milliseconds
• PHP 7: 32 milliseconds
• HHVM 3.7: 30 milliseconds
PHP adoption rates were depressing
• PHP 5.3 — 41.4%
• Released: June 30, 2009
• End of Life: August 14, 2014
• PHP 5.4 — 30.1%
• Released: March 1, 2012
• End of Life: September 12, 2015
• PHP 5.5 — 9.3%
• Released: June 20, 2013
• End of Life: June 20, 2016
• PHP 5.6 — 1.5%
• Released: August 28, 2014
• End of Life: August 28, 2017
And hosts were announcing HHVM support
• WP Engine
• DreamHost
• Pagely
• SiteGround
• Kinsta
• Etc.
Legacy PHP bad
But I was being myopic
Don't get me wrong
HHVM is still fast
But PHP is PHP
PHP 7 is PHP
on steroids
Let's take a look
at some numbers
boogah.org/55vs7
PHP 5.5 vs. PHP 7
• WordPress (4.3.1)
• PHP 7 was 2.6 times faster than PHP 5.5
• WordPress (4.3.1) + WooCommerce (2.4.8)
• PHP 7 was 1.4 times faster than PHP 5.5
• WordPress (4.3.1) + bbPress (2.5.8)
• PHP 7 was 6.6 times faster than PHP 5.5
• WordPress (4.3.1) + BuddyPress (2.3.4)
• PHP 7 was 4.7 times faster than PHP 5.5
All these numbers are
pretty awesome
However, 67.9% of all PHP sites
are currently powered by versions
that should be considered dead
They have ceased to be
Why should anyone give a !?
Nobody builds sites for the past
You build them for the future
The futch
vagrantup.com
Vagrant creates & configures
virtual development environments
This means
less yak shaving & more working
Varying Vagrant Vagrants
is the industry standard
for WordPress development
There is another
It does PHP 7 & HHVM
And it was made for WordPress development
HGVgithub.com/wpengine/hgv
Built by WP Engine
for our Mercury platform
No matter where you host your site,
you can use HGV to test your code
HGV
• Built with members of the 10up team
• Work on your code under PHP 5.5, PHP 7 & HHVM at the same time
• Provision multiple sites using YML files
• Debugging & benchmarking tools
• Xdebug
• XHProf
• Siege
• query-monitor
• debug-objects
• debug-bar
Installing HGV is easyish
Prerequisites
• Git
• VirtualBox or VMware
• Vagrant
• The Vagrant Ghost plugin
boogah.org/hgv-prereq
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install git
brew install caskroom/cask/brew-cask
brew cask install vagrant
brew cask install virtualbox
vagrant plugin install vagrant-ghost
Install
cd ~
mkdir vagrant
cd vagrant
git clone --recursive https://github.com/wpengine/hgv.git
cd hgv
vagrant up
While HGV installs, make yourself a drink
It should only take about 30 minutes
Get to work
• Local file access
• Use your favorite text editor!
• [HGV_dir]/hgv_data/sites/[sitename]/
• [HGV_dir]/hgv_data/sites/[sitename]/wp-content/[plugins|themes]/
• SSH
• vagrant ssh
• phpMyAdmin
• admin.hgv.test/phpmyadmin/
Just import your site
and see what breaks
PHP 7 & WordPress
boogah.org/php7wp
Switching your environment
is a piece of cake
Force your site to PHP 7
vagrant ssh
sudo nano -w /etc/nginx/conf.d/www-[sitename].conf
Force your site to PHP 7
Change this:
cache.php.example.test php;
php.example.test php;
To this:
cache.php.example.test php7;
php.example.test php7;
Save your changes!
Force your site to PHP 7
service nginx restart
Questions?

More Related Content

What's hot

What's hot (20)

Increasing Traffic Through Optimization : The Importance of Site Speed
Increasing Traffic Through Optimization : The Importance of Site SpeedIncreasing Traffic Through Optimization : The Importance of Site Speed
Increasing Traffic Through Optimization : The Importance of Site Speed
 
WordPress as a Headless CMS - Bronson Quick
WordPress as a Headless CMS - Bronson QuickWordPress as a Headless CMS - Bronson Quick
WordPress as a Headless CMS - Bronson Quick
 
Content as a Service: What to Know About Decoupled CMS
Content as a Service: What to Know About Decoupled CMSContent as a Service: What to Know About Decoupled CMS
Content as a Service: What to Know About Decoupled CMS
 
WordPress as a Service
WordPress as a ServiceWordPress as a Service
WordPress as a Service
 
Building a community of Open Source intranet users
Building a community of Open Source intranet usersBuilding a community of Open Source intranet users
Building a community of Open Source intranet users
 
WordPress Multilingual: WordCamp Antwerp 2016
WordPress Multilingual: WordCamp Antwerp 2016WordPress Multilingual: WordCamp Antwerp 2016
WordPress Multilingual: WordCamp Antwerp 2016
 
Nürnberg WooCommerce Talk - 11/24/16
Nürnberg WooCommerce Talk - 11/24/16Nürnberg WooCommerce Talk - 11/24/16
Nürnberg WooCommerce Talk - 11/24/16
 
WP-CLI: WordCamp NYC 2015
WP-CLI: WordCamp NYC 2015WP-CLI: WordCamp NYC 2015
WP-CLI: WordCamp NYC 2015
 
Working in harmony
Working in harmonyWorking in harmony
Working in harmony
 
The Future of-the CMS (Twin Cities DrupalCamp 2015)
The Future of-the CMS (Twin Cities DrupalCamp 2015)The Future of-the CMS (Twin Cities DrupalCamp 2015)
The Future of-the CMS (Twin Cities DrupalCamp 2015)
 
Optimizing Your Site for Holiday Traffic
Optimizing Your Site for Holiday TrafficOptimizing Your Site for Holiday Traffic
Optimizing Your Site for Holiday Traffic
 
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
 
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
Advancing Content Management for Omni-Channel User Experiences by Roland Bene...
 
The WordPress REST API as a Springboard for Website Greatness
The WordPress REST API as a Springboard for Website GreatnessThe WordPress REST API as a Springboard for Website Greatness
The WordPress REST API as a Springboard for Website Greatness
 
Building and future-proofing your WordPress sites with the Genesis Framework
Building and future-proofing your WordPress sites with the Genesis FrameworkBuilding and future-proofing your WordPress sites with the Genesis Framework
Building and future-proofing your WordPress sites with the Genesis Framework
 
Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...
Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...
Gestione avanzata di WordPress con WP-CLI - WordCamp Torino 2017 - Andrea Car...
 
Empowering Your Clients and Be an Advocate for Yourself
Empowering Your Clients and Be an Advocate for YourselfEmpowering Your Clients and Be an Advocate for Yourself
Empowering Your Clients and Be an Advocate for Yourself
 
Building Your WordPress Website Using Google Apps Engine
Building Your WordPress Website Using Google Apps EngineBuilding Your WordPress Website Using Google Apps Engine
Building Your WordPress Website Using Google Apps Engine
 
Between a Block & a Hard Place
Between a Block & a Hard PlaceBetween a Block & a Hard Place
Between a Block & a Hard Place
 
Slim PHP when you don't need the kitchen sink
Slim PHP   when you don't need the kitchen sinkSlim PHP   when you don't need the kitchen sink
Slim PHP when you don't need the kitchen sink
 

Viewers also liked

2016 Future of Open Source Study
2016 Future of Open Source Study2016 Future of Open Source Study
2016 Future of Open Source Study
North Bridge
 

Viewers also liked (7)

Achariya cloud-bulk-email-platform
Achariya cloud-bulk-email-platformAchariya cloud-bulk-email-platform
Achariya cloud-bulk-email-platform
 
Is your code ready for PHP 7 ?
Is your code ready for PHP 7 ?Is your code ready for PHP 7 ?
Is your code ready for PHP 7 ?
 
How WPMaintain Improved Page Speed by 16%
How WPMaintain Improved Page Speed by 16%How WPMaintain Improved Page Speed by 16%
How WPMaintain Improved Page Speed by 16%
 
Achariya bus-booking-engine
Achariya bus-booking-engineAchariya bus-booking-engine
Achariya bus-booking-engine
 
The WordPress Industry Survey 2016
The WordPress Industry Survey 2016The WordPress Industry Survey 2016
The WordPress Industry Survey 2016
 
2016 Future of Open Source Study
2016 Future of Open Source Study2016 Future of Open Source Study
2016 Future of Open Source Study
 
Elements of Visual Art
Elements of Visual ArtElements of Visual Art
Elements of Visual Art
 

Similar to Way of the Future

Similar to Way of the Future (20)

ZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello ProductionZendCon 2015 - Laravel Forge: Hello World to Hello Production
ZendCon 2015 - Laravel Forge: Hello World to Hello Production
 
Laravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionLaravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello Production
 
Varying WordPress Development Environment WordCamp Cincinnati 2016
Varying WordPress Development Environment WordCamp Cincinnati 2016Varying WordPress Development Environment WordCamp Cincinnati 2016
Varying WordPress Development Environment WordCamp Cincinnati 2016
 
php[world] 2015 Laravel 5.1: From Homestead to the Cloud
php[world] 2015 Laravel 5.1: From Homestead to the Cloudphp[world] 2015 Laravel 5.1: From Homestead to the Cloud
php[world] 2015 Laravel 5.1: From Homestead to the Cloud
 
Laravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello ProductionLaravel Forge: Hello World to Hello Production
Laravel Forge: Hello World to Hello Production
 
Production ready word press
Production ready word pressProduction ready word press
Production ready word press
 
Google App Engine: For PHP Developers
Google App Engine: For PHP DevelopersGoogle App Engine: For PHP Developers
Google App Engine: For PHP Developers
 
The bugfix confirmation loop - PyConFI 2013
The bugfix confirmation loop - PyConFI 2013The bugfix confirmation loop - PyConFI 2013
The bugfix confirmation loop - PyConFI 2013
 
Hhvm vs php
Hhvm vs phpHhvm vs php
Hhvm vs php
 
Building with Virtual Development Environments
Building with Virtual Development EnvironmentsBuilding with Virtual Development Environments
Building with Virtual Development Environments
 
Modern Local Environment for WordPress in 2018
Modern Local Environment for WordPress in 2018Modern Local Environment for WordPress in 2018
Modern Local Environment for WordPress in 2018
 
PHP - Programming language war, does it matter
PHP - Programming language war, does it matterPHP - Programming language war, does it matter
PHP - Programming language war, does it matter
 
Production Ready WordPress - WC Utrecht 2017
Production Ready WordPress  - WC Utrecht 2017Production Ready WordPress  - WC Utrecht 2017
Production Ready WordPress - WC Utrecht 2017
 
Madison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small TeamsMadison PHP 2015 - DevOps For Small Teams
Madison PHP 2015 - DevOps For Small Teams
 
ZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small TeamsZendCon 2015 - DevOps for Small Teams
ZendCon 2015 - DevOps for Small Teams
 
Production Ready WordPress #WPLDN
Production Ready WordPress #WPLDNProduction Ready WordPress #WPLDN
Production Ready WordPress #WPLDN
 
Hhvm and wordpress
Hhvm and wordpressHhvm and wordpress
Hhvm and wordpress
 
The shift to the edge
The shift to the edgeThe shift to the edge
The shift to the edge
 
Using PHP with IBM Bluemix
Using PHP with IBM BluemixUsing PHP with IBM Bluemix
Using PHP with IBM Bluemix
 
ConFoo 2016: Development to Deployment
ConFoo 2016: Development to DeploymentConFoo 2016: Development to Deployment
ConFoo 2016: Development to Deployment
 

Recently uploaded

Recently uploaded (20)

Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Way of the Future

  • 1.
  • 2. I'm Jason Cosper I work at WP Engine
  • 3. I created Hipster Ipsum I organize the Bakersfield WordPress Meetup I maintain the Force Strong Passwords plugin
  • 5. When I gave this talk five months ago...
  • 6. I was pushing HHVM Hard
  • 7. The numbers were compelling WordPress 4.1.x with 20 concurrent users. • Requests per second • PHP 5.5: 256 • PHP 7: 627 • HHVM 3.7: 666 • Latency • PHP 5.5: 78 milliseconds • PHP 7: 32 milliseconds • HHVM 3.7: 30 milliseconds
  • 8. PHP adoption rates were depressing • PHP 5.3 — 41.4% • Released: June 30, 2009 • End of Life: August 14, 2014 • PHP 5.4 — 30.1% • Released: March 1, 2012 • End of Life: September 12, 2015 • PHP 5.5 — 9.3% • Released: June 20, 2013 • End of Life: June 20, 2016 • PHP 5.6 — 1.5% • Released: August 28, 2014 • End of Life: August 28, 2017
  • 9. And hosts were announcing HHVM support • WP Engine • DreamHost • Pagely • SiteGround • Kinsta • Etc.
  • 11. But I was being myopic
  • 12. Don't get me wrong HHVM is still fast
  • 13.
  • 14. But PHP is PHP
  • 15. PHP 7 is PHP on steroids
  • 16. Let's take a look at some numbers boogah.org/55vs7
  • 17. PHP 5.5 vs. PHP 7 • WordPress (4.3.1) • PHP 7 was 2.6 times faster than PHP 5.5 • WordPress (4.3.1) + WooCommerce (2.4.8) • PHP 7 was 1.4 times faster than PHP 5.5 • WordPress (4.3.1) + bbPress (2.5.8) • PHP 7 was 6.6 times faster than PHP 5.5 • WordPress (4.3.1) + BuddyPress (2.3.4) • PHP 7 was 4.7 times faster than PHP 5.5
  • 18. All these numbers are pretty awesome
  • 19. However, 67.9% of all PHP sites are currently powered by versions that should be considered dead
  • 21. Why should anyone give a !?
  • 22. Nobody builds sites for the past You build them for the future
  • 25. Vagrant creates & configures virtual development environments
  • 26. This means less yak shaving & more working
  • 27. Varying Vagrant Vagrants is the industry standard for WordPress development
  • 29. It does PHP 7 & HHVM And it was made for WordPress development
  • 31. Built by WP Engine for our Mercury platform
  • 32. No matter where you host your site, you can use HGV to test your code
  • 33. HGV • Built with members of the 10up team • Work on your code under PHP 5.5, PHP 7 & HHVM at the same time • Provision multiple sites using YML files • Debugging & benchmarking tools • Xdebug • XHProf • Siege • query-monitor • debug-objects • debug-bar
  • 34. Installing HGV is easyish
  • 35. Prerequisites • Git • VirtualBox or VMware • Vagrant • The Vagrant Ghost plugin boogah.org/hgv-prereq ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew install git brew install caskroom/cask/brew-cask brew cask install vagrant brew cask install virtualbox vagrant plugin install vagrant-ghost
  • 36. Install cd ~ mkdir vagrant cd vagrant git clone --recursive https://github.com/wpengine/hgv.git cd hgv vagrant up
  • 37. While HGV installs, make yourself a drink It should only take about 30 minutes
  • 38. Get to work • Local file access • Use your favorite text editor! • [HGV_dir]/hgv_data/sites/[sitename]/ • [HGV_dir]/hgv_data/sites/[sitename]/wp-content/[plugins|themes]/ • SSH • vagrant ssh • phpMyAdmin • admin.hgv.test/phpmyadmin/
  • 39. Just import your site and see what breaks
  • 40. PHP 7 & WordPress boogah.org/php7wp
  • 41. Switching your environment is a piece of cake
  • 42. Force your site to PHP 7 vagrant ssh sudo nano -w /etc/nginx/conf.d/www-[sitename].conf
  • 43. Force your site to PHP 7 Change this: cache.php.example.test php; php.example.test php; To this: cache.php.example.test php7; php.example.test php7; Save your changes!
  • 44. Force your site to PHP 7 service nginx restart