SlideShare a Scribd company logo
1 of 29
Download to read offline
PHP in the Cloud
The Future of the Glue of the Internet
About Me
•  Andrew Kenney
•  VP, Cloud Engineering @ Acquia
•  Previously President/CTO @ ONEsite




   @syrneus - purefire@gmail.com - andrew.kenney@acquia.com
    purefire.com - linkedin.com/akenney - github.com/syrneus
Glue of the Internet
•  “PHP is glue. It is the glue used to build
   cool web applications by sticking dozens
   of 3rd-party libraries together and making
   it all appear as one coherent entity…”
   ~PHP.net
PHP in a Nutshell
•  “I don't know how to stop it, there was
   never any intent to write a programming
   language” ~ Rasmus Lerdorf, creator of
   PHP
How did PHP get so big?
•  PHP replaced Perl as the lingua franca of
   the web
•  PHP.net had great examples and
   comments
•  Google did not exist
•  StackOverflow did not exist
PHP’s History
•    1995 – First Release
•    1998 – PHP 3
•    2000 – PHP 4 / Zend Engine I
•    2004 – PHP 5 / Zend Engine II
•    2009 – PHP 5.3
•    PHP 6 - ???
PHP has a lot of competition…




Top Languages on GitHub
Why use PHP now?
•    Powers the majority of the known web
•    Installed everywhere
•    Proven scalability
•    Large developer community
•    Great frameworks
Who Uses PHP?
•    Facebook
•    Wikipedia
•    Yahoo / Flickr
•    White House
•    WordPress.com
•    Tumblr
•    Most large Internet forums
•    etc.
Who uses PHP? Acquia!

         •  Thousands of PHP servers on
            Amazon Cloud
         •  Billions of monthly pageviews
         •  Tens of thousands of Drupal sites
         •  Hosting some of the largest
            Drupal sites in the world
PHP CMS Projects
•  Popular CMSes
  –  Drupal
  –  Joomla
  –  WordPress
•  Easier than ever to build a site
•  Drupal 8 is going to be amazing…
PHP Frameworks
•    Zend Framework (ZF2)
•    Symfony
•    FuelPHP / Yii / CodeIgniter / CakePHP
•    You’re not a real PHP programmer until
     you’ve created your own framework
PHP Stack
•  PHP - PHP 5.3+
  –  Memcache – use it (or use Redis)
  –  APC
•  Web Server
  –  Apache / Nginx / etc.
•  Database
  –  MySQL / Postgres / etc.
•  Operating System
  –  Ubuntu / Red Hat / etc.
PHP in the Cloud
•  It is easy to run a PHP site in the cloud
•  It is HARD to run a PHP site in the cloud
   with…
  –  High availability
  –  High scalability
  –  High security
PHP Cloud Hosting
•  IaaS
  –  Amazon Web Services
  –  Rackspace Cloud
•  PaaS
  –  PaaS: PHPfog / AppFog / PagodaBox /
     Heroku
  –  Drupal Cloud: Acquia Cloud / Pantheon
•  Traditional Hosting
  –  Linode / Rackspace / etc.
Setting up simple LAMP stack
Complicated Cloud LAMP Stack
    Availability Zone A          Availability Zone B                       Availability Zone A               Availability Zone B




                          BAL




                                                      BAL




                                                                                                 BAL




                                                                                                                                  BAL
          Varnish                     Varnish                                    Varnish                          Varnish

           nginx                       nginx                                      nginx                            nginx

                          WEB




                                                                                                 WEB
                                                      WEB




                                                                                                                                  WEB
       Memcache                     Memcache                                  Memcache                          Memcache

         APACHE                      APACHE                                     APACHE                           APACHE

                Drupal                      Drupal                                     Drupal                           Drupal
        User                        User                                       User                             User
                  via                         via                                        via                              via
        Files   Git/SVN             Files   Git/SVN                            Files   Git/SVN                  Files   Git/SVN
                          FSDB




                                                      FSDB




                                                                                                 FSDB




                                                                                                                                  FSDB
         User Files                  User Files                                 User Files                       User Files
         GlusterFS                   GlusterFS                                  GlusterFS                        GlusterFS


                                                             Multiregion
                                                             Replication
          MySQL                       MySQL                                      MySQL                            MySQL




                  Site A                    Site A                                           Site A                           Site A
                Site B                    Site B
            Sites C/D             Sites C & D
                                                                                                        Acquia Confidential
Use a PaaS for your Startup
                         PagodaBox
AppFog




          Acquia Cloud
PagodaBox Symfony Demo




    Create a free account on www.pagodabox.com
Download simple site at github.com/syrneus/phpinthecloud
PagodaBox Symfony Demo




  Name your new application and launch it
PagodaBox Symfony Demo




 Setup your SSH keys so you can easily git push changes
PagodaBox Symfony Demo




  Navigate to your code on the filesystem and
  push your website live!
PagodaBox Symfony Demo
PagodaBox Symfony Demo
Drawception – Symfony at Scale
•  Everything available as an API   •  Doctrine ORM
•  Twig template engine powered     •  Hosted on PagodaBox
   HTML / mobile / Facebook views
PHP – Lessons Learned
•    Use a framework
•    Don’t over engineer scalability
•    Use an ORM
•    Use UTC server time
•    Use a template language (even if it is PHP)
•    Plan for internationalization from the beginning
•    Use UTF-8 for your Databases
•    Version control APIs
Why use PHP for a Startup?
•  Trusted by some of the largest web
   companies in the world
•  Amazing pool of developer talent
•  PHP will not be your bottleneck in
   scalability
•  Don’t reinvent the wheel. Also use PHP/
   Drupal for elements of your startup like the
   website/blog/community/etc.
Acquia - PHP @ Scale
Questions?
•  Tweet Me: @syrneus
•  E-mail Me: purefire@gmail.com
   @syrneus - purefire@gmail.com - andrew.kenney@acquia.com
    purefire.com - linkedin.com/akenney - github.com/syrneus




                      Ask me about Acquia!

More Related Content

What's hot

JCR In Action (ApacheCon US 2009)
JCR In Action (ApacheCon US 2009)JCR In Action (ApacheCon US 2009)
JCR In Action (ApacheCon US 2009)Carsten Ziegeler
 
Docker for the Rubyist
Docker for the RubyistDocker for the Rubyist
Docker for the RubyistBrian DeHamer
 
Alfresco WCM Roadmap 2010 (Cheetah & Swift)
Alfresco WCM Roadmap 2010 (Cheetah & Swift)Alfresco WCM Roadmap 2010 (Cheetah & Swift)
Alfresco WCM Roadmap 2010 (Cheetah & Swift)Alfresco Software
 
Empowering Next Generation Media
Empowering Next Generation MediaEmpowering Next Generation Media
Empowering Next Generation MediaRicardo Piccoli
 
Ruby on rails toolbox
Ruby on rails toolboxRuby on rails toolbox
Ruby on rails toolboxBlazing Cloud
 
Crate - ruby based standalone executables
Crate - ruby based standalone executablesCrate - ruby based standalone executables
Crate - ruby based standalone executablesJeremy Hinegardner
 
Js engine performance
Js engine performanceJs engine performance
Js engine performancepaullfc
 
Stress Free Deployment - Confoo 2011
Stress Free Deployment  - Confoo 2011Stress Free Deployment  - Confoo 2011
Stress Free Deployment - Confoo 2011Bachkoutou Toutou
 

What's hot (9)

JCR In Action (ApacheCon US 2009)
JCR In Action (ApacheCon US 2009)JCR In Action (ApacheCon US 2009)
JCR In Action (ApacheCon US 2009)
 
Docker for the Rubyist
Docker for the RubyistDocker for the Rubyist
Docker for the Rubyist
 
Alfresco WCM Roadmap 2010 (Cheetah & Swift)
Alfresco WCM Roadmap 2010 (Cheetah & Swift)Alfresco WCM Roadmap 2010 (Cheetah & Swift)
Alfresco WCM Roadmap 2010 (Cheetah & Swift)
 
Empowering Next Generation Media
Empowering Next Generation MediaEmpowering Next Generation Media
Empowering Next Generation Media
 
Ruby on rails toolbox
Ruby on rails toolboxRuby on rails toolbox
Ruby on rails toolbox
 
Crate - ruby based standalone executables
Crate - ruby based standalone executablesCrate - ruby based standalone executables
Crate - ruby based standalone executables
 
Js engine performance
Js engine performanceJs engine performance
Js engine performance
 
Stress Free Deployment - Confoo 2011
Stress Free Deployment  - Confoo 2011Stress Free Deployment  - Confoo 2011
Stress Free Deployment - Confoo 2011
 
Rubypalooza 2009
Rubypalooza 2009Rubypalooza 2009
Rubypalooza 2009
 

Viewers also liked

Clevo w860 bat-3
Clevo w860 bat-3Clevo w860 bat-3
Clevo w860 bat-3aras189
 
Negotiation History
Negotiation HistoryNegotiation History
Negotiation Historyaariastoro
 
V6 overzicht isomerie
V6 overzicht isomerieV6 overzicht isomerie
V6 overzicht isomerieBram Klein
 
Cómo Participar con un Proyecto en-SIDE
Cómo Participar con un Proyecto en-SIDECómo Participar con un Proyecto en-SIDE
Cómo Participar con un Proyecto en-SIDEjcb-strategies
 
Hostless : Simple Connectivity For WiMax Devices
Hostless : Simple Connectivity For WiMax DevicesHostless : Simple Connectivity For WiMax Devices
Hostless : Simple Connectivity For WiMax DevicesGreen Packet
 
Sothebys Institute Egon Schieles Dead City
Sothebys Institute Egon Schieles Dead CitySothebys Institute Egon Schieles Dead City
Sothebys Institute Egon Schieles Dead CityRaymond Dowd
 
50 great cavas Taste & Retail Guide
50 great cavas Taste & Retail Guide50 great cavas Taste & Retail Guide
50 great cavas Taste & Retail Guideoniro vins
 
Organo Gold Los Angeles | Retail Sales Receipt
Organo Gold Los Angeles | Retail Sales ReceiptOrgano Gold Los Angeles | Retail Sales Receipt
Organo Gold Los Angeles | Retail Sales ReceiptOG-Gourmet-Coffee
 
Master AIRE 2014
Master AIRE 2014Master AIRE 2014
Master AIRE 2014CRI Paris
 
Broken rules gamesday small
Broken rules gamesday smallBroken rules gamesday small
Broken rules gamesday smallMartin Ortner
 
Reinosa - San Mateo, 2015
Reinosa - San Mateo, 2015Reinosa - San Mateo, 2015
Reinosa - San Mateo, 2015charlyjc20
 
Claves Estrategia ecrm eficaz
Claves Estrategia ecrm eficazClaves Estrategia ecrm eficaz
Claves Estrategia ecrm eficazSinergia Labs
 
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10Christian Desclouds
 

Viewers also liked (20)

Clevo w860 bat-3
Clevo w860 bat-3Clevo w860 bat-3
Clevo w860 bat-3
 
Negotiation History
Negotiation HistoryNegotiation History
Negotiation History
 
Cableados y normativas
Cableados y normativasCableados y normativas
Cableados y normativas
 
Cassandra trabajo2 tv eq5
Cassandra trabajo2 tv eq5Cassandra trabajo2 tv eq5
Cassandra trabajo2 tv eq5
 
V6 overzicht isomerie
V6 overzicht isomerieV6 overzicht isomerie
V6 overzicht isomerie
 
Cómo Participar con un Proyecto en-SIDE
Cómo Participar con un Proyecto en-SIDECómo Participar con un Proyecto en-SIDE
Cómo Participar con un Proyecto en-SIDE
 
Hostless : Simple Connectivity For WiMax Devices
Hostless : Simple Connectivity For WiMax DevicesHostless : Simple Connectivity For WiMax Devices
Hostless : Simple Connectivity For WiMax Devices
 
Sothebys Institute Egon Schieles Dead City
Sothebys Institute Egon Schieles Dead CitySothebys Institute Egon Schieles Dead City
Sothebys Institute Egon Schieles Dead City
 
50 great cavas Taste & Retail Guide
50 great cavas Taste & Retail Guide50 great cavas Taste & Retail Guide
50 great cavas Taste & Retail Guide
 
ENCIMERA FRANKE TP 513 v11
ENCIMERA FRANKE TP 513 v11ENCIMERA FRANKE TP 513 v11
ENCIMERA FRANKE TP 513 v11
 
Las nuevas tecnologías.
Las nuevas tecnologías.Las nuevas tecnologías.
Las nuevas tecnologías.
 
Organo Gold Los Angeles | Retail Sales Receipt
Organo Gold Los Angeles | Retail Sales ReceiptOrgano Gold Los Angeles | Retail Sales Receipt
Organo Gold Los Angeles | Retail Sales Receipt
 
Master AIRE 2014
Master AIRE 2014Master AIRE 2014
Master AIRE 2014
 
Broken rules gamesday small
Broken rules gamesday smallBroken rules gamesday small
Broken rules gamesday small
 
Reinosa - San Mateo, 2015
Reinosa - San Mateo, 2015Reinosa - San Mateo, 2015
Reinosa - San Mateo, 2015
 
Laia marta ada_ariadna
Laia marta ada_ariadnaLaia marta ada_ariadna
Laia marta ada_ariadna
 
Dauphin Company Profile CPT
Dauphin Company Profile  CPTDauphin Company Profile  CPT
Dauphin Company Profile CPT
 
Fundamento de la Venta - Dirección de Ventas
Fundamento de la Venta - Dirección de VentasFundamento de la Venta - Dirección de Ventas
Fundamento de la Venta - Dirección de Ventas
 
Claves Estrategia ecrm eficaz
Claves Estrategia ecrm eficazClaves Estrategia ecrm eficaz
Claves Estrategia ecrm eficaz
 
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
Présentation Cnoté - Solution Qr Code Giroud Vins 04 02 10
 

Similar to PHP in the Cloud

Storage Developer Conference - 09/19/2012
Storage Developer Conference - 09/19/2012Storage Developer Conference - 09/19/2012
Storage Developer Conference - 09/19/2012Ceph Community
 
Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014André Rømcke
 
Developer’s intro to the alfresco platform
Developer’s intro to the alfresco platformDeveloper’s intro to the alfresco platform
Developer’s intro to the alfresco platformAlfresco Software
 
Apache Tutorial
Apache TutorialApache Tutorial
Apache TutorialGuru99
 
Windows Containers - Microsoft Ignite The Tour
Windows Containers - Microsoft Ignite The TourWindows Containers - Microsoft Ignite The Tour
Windows Containers - Microsoft Ignite The TourEran Stiller
 
The future of the php development environment
The future of the php development environmentThe future of the php development environment
The future of the php development environmentJeremy Quinton
 
Apache Rave (Incubating) at SURFnet
Apache Rave (Incubating) at SURFnetApache Rave (Incubating) at SURFnet
Apache Rave (Incubating) at SURFnetJasha Joachimsthal
 
CRX Best practices
CRX Best practicesCRX Best practices
CRX Best practiceslisui0807
 
WCM Roadmap Versions 3 3 And 4 0
WCM Roadmap Versions 3 3 And 4 0WCM Roadmap Versions 3 3 And 4 0
WCM Roadmap Versions 3 3 And 4 0Alfresco Software
 
BP-9 Share Customization Best Practices
BP-9 Share Customization Best PracticesBP-9 Share Customization Best Practices
BP-9 Share Customization Best PracticesAlfresco Software
 
Ruby'izing iOS development
Ruby'izing iOS developmentRuby'izing iOS development
Ruby'izing iOS developmenttoamitkumar
 
Optaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionOptaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionJeff Potts
 
WordPress Meetup at HUBBA Thailand
WordPress Meetup at HUBBA ThailandWordPress Meetup at HUBBA Thailand
WordPress Meetup at HUBBA ThailandTakayuki Miyauchi
 
Docker for Developers - PNWPHP 2016 Workshop
Docker for Developers - PNWPHP 2016 WorkshopDocker for Developers - PNWPHP 2016 Workshop
Docker for Developers - PNWPHP 2016 WorkshopChris Tankersley
 
Interactive Apache Spark in Your Browser
Interactive Apache Spark in Your BrowserInteractive Apache Spark in Your Browser
Interactive Apache Spark in Your BrowserCloudera, Inc.
 
The DynaSlave Plugin
The DynaSlave PluginThe DynaSlave Plugin
The DynaSlave PluginBrian Moyles
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language FrontierRestlet
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language FrontierJerome Louvel
 

Similar to PHP in the Cloud (20)

Storage Developer Conference - 09/19/2012
Storage Developer Conference - 09/19/2012Storage Developer Conference - 09/19/2012
Storage Developer Conference - 09/19/2012
 
Dev ops for developers
Dev ops for developersDev ops for developers
Dev ops for developers
 
DevOps for Developers
DevOps for DevelopersDevOps for Developers
DevOps for Developers
 
Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014Dockerize your Symfony application - Symfony Live NYC 2014
Dockerize your Symfony application - Symfony Live NYC 2014
 
Developer’s intro to the alfresco platform
Developer’s intro to the alfresco platformDeveloper’s intro to the alfresco platform
Developer’s intro to the alfresco platform
 
Apache Tutorial
Apache TutorialApache Tutorial
Apache Tutorial
 
Windows Containers - Microsoft Ignite The Tour
Windows Containers - Microsoft Ignite The TourWindows Containers - Microsoft Ignite The Tour
Windows Containers - Microsoft Ignite The Tour
 
The future of the php development environment
The future of the php development environmentThe future of the php development environment
The future of the php development environment
 
Apache Rave (Incubating) at SURFnet
Apache Rave (Incubating) at SURFnetApache Rave (Incubating) at SURFnet
Apache Rave (Incubating) at SURFnet
 
CRX Best practices
CRX Best practicesCRX Best practices
CRX Best practices
 
WCM Roadmap Versions 3 3 And 4 0
WCM Roadmap Versions 3 3 And 4 0WCM Roadmap Versions 3 3 And 4 0
WCM Roadmap Versions 3 3 And 4 0
 
BP-9 Share Customization Best Practices
BP-9 Share Customization Best PracticesBP-9 Share Customization Best Practices
BP-9 Share Customization Best Practices
 
Ruby'izing iOS development
Ruby'izing iOS developmentRuby'izing iOS development
Ruby'izing iOS development
 
Optaros Surf Code Camp Introduction
Optaros Surf Code Camp IntroductionOptaros Surf Code Camp Introduction
Optaros Surf Code Camp Introduction
 
WordPress Meetup at HUBBA Thailand
WordPress Meetup at HUBBA ThailandWordPress Meetup at HUBBA Thailand
WordPress Meetup at HUBBA Thailand
 
Docker for Developers - PNWPHP 2016 Workshop
Docker for Developers - PNWPHP 2016 WorkshopDocker for Developers - PNWPHP 2016 Workshop
Docker for Developers - PNWPHP 2016 Workshop
 
Interactive Apache Spark in Your Browser
Interactive Apache Spark in Your BrowserInteractive Apache Spark in Your Browser
Interactive Apache Spark in Your Browser
 
The DynaSlave Plugin
The DynaSlave PluginThe DynaSlave Plugin
The DynaSlave Plugin
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language Frontier
 
Web APIs, the New Language Frontier
Web APIs, the New Language FrontierWeb APIs, the New Language Frontier
Web APIs, the New Language Frontier
 

More from Acquia

Acquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdfAcquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdfAcquia
 
Acquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdfAcquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdfAcquia
 
Taking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next LevelTaking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next LevelAcquia
 
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdfCDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdfAcquia
 
May Partner Bootcamp 2022
May Partner Bootcamp 2022May Partner Bootcamp 2022
May Partner Bootcamp 2022Acquia
 
April Partner Bootcamp 2022
April Partner Bootcamp 2022April Partner Bootcamp 2022
April Partner Bootcamp 2022Acquia
 
How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story Acquia
 
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CXUsing Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CXAcquia
 
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development WorkflowImprove Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development WorkflowAcquia
 
September Partner Bootcamp
September Partner BootcampSeptember Partner Bootcamp
September Partner BootcampAcquia
 
August partner bootcamp
August partner bootcampAugust partner bootcamp
August partner bootcampAcquia
 
July 2021 Partner Bootcamp
July  2021 Partner BootcampJuly  2021 Partner Bootcamp
July 2021 Partner BootcampAcquia
 
May Partner Bootcamp
May Partner BootcampMay Partner Bootcamp
May Partner BootcampAcquia
 
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASYDRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASYAcquia
 
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead MachineWork While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead MachineAcquia
 
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B LeadsAcquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B LeadsAcquia
 
April partner bootcamp deck cookieless future
April partner bootcamp deck  cookieless futureApril partner bootcamp deck  cookieless future
April partner bootcamp deck cookieless futureAcquia
 
How to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutionsHow to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutionsAcquia
 
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...Acquia
 
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021Acquia
 

More from Acquia (20)

Acquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdfAcquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdf
 
Acquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdfAcquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdf
 
Taking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next LevelTaking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next Level
 
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdfCDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
 
May Partner Bootcamp 2022
May Partner Bootcamp 2022May Partner Bootcamp 2022
May Partner Bootcamp 2022
 
April Partner Bootcamp 2022
April Partner Bootcamp 2022April Partner Bootcamp 2022
April Partner Bootcamp 2022
 
How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story
 
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CXUsing Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
 
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development WorkflowImprove Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
 
September Partner Bootcamp
September Partner BootcampSeptember Partner Bootcamp
September Partner Bootcamp
 
August partner bootcamp
August partner bootcampAugust partner bootcamp
August partner bootcamp
 
July 2021 Partner Bootcamp
July  2021 Partner BootcampJuly  2021 Partner Bootcamp
July 2021 Partner Bootcamp
 
May Partner Bootcamp
May Partner BootcampMay Partner Bootcamp
May Partner Bootcamp
 
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASYDRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
 
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead MachineWork While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
 
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B LeadsAcquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
 
April partner bootcamp deck cookieless future
April partner bootcamp deck  cookieless futureApril partner bootcamp deck  cookieless future
April partner bootcamp deck cookieless future
 
How to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutionsHow to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutions
 
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
 
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
 

PHP in the Cloud

  • 1. PHP in the Cloud The Future of the Glue of the Internet
  • 2. About Me •  Andrew Kenney •  VP, Cloud Engineering @ Acquia •  Previously President/CTO @ ONEsite @syrneus - purefire@gmail.com - andrew.kenney@acquia.com purefire.com - linkedin.com/akenney - github.com/syrneus
  • 3. Glue of the Internet •  “PHP is glue. It is the glue used to build cool web applications by sticking dozens of 3rd-party libraries together and making it all appear as one coherent entity…” ~PHP.net
  • 4. PHP in a Nutshell •  “I don't know how to stop it, there was never any intent to write a programming language” ~ Rasmus Lerdorf, creator of PHP
  • 5. How did PHP get so big? •  PHP replaced Perl as the lingua franca of the web •  PHP.net had great examples and comments •  Google did not exist •  StackOverflow did not exist
  • 6. PHP’s History •  1995 – First Release •  1998 – PHP 3 •  2000 – PHP 4 / Zend Engine I •  2004 – PHP 5 / Zend Engine II •  2009 – PHP 5.3 •  PHP 6 - ???
  • 7. PHP has a lot of competition… Top Languages on GitHub
  • 8. Why use PHP now? •  Powers the majority of the known web •  Installed everywhere •  Proven scalability •  Large developer community •  Great frameworks
  • 9. Who Uses PHP? •  Facebook •  Wikipedia •  Yahoo / Flickr •  White House •  WordPress.com •  Tumblr •  Most large Internet forums •  etc.
  • 10. Who uses PHP? Acquia! •  Thousands of PHP servers on Amazon Cloud •  Billions of monthly pageviews •  Tens of thousands of Drupal sites •  Hosting some of the largest Drupal sites in the world
  • 11. PHP CMS Projects •  Popular CMSes –  Drupal –  Joomla –  WordPress •  Easier than ever to build a site •  Drupal 8 is going to be amazing…
  • 12. PHP Frameworks •  Zend Framework (ZF2) •  Symfony •  FuelPHP / Yii / CodeIgniter / CakePHP •  You’re not a real PHP programmer until you’ve created your own framework
  • 13. PHP Stack •  PHP - PHP 5.3+ –  Memcache – use it (or use Redis) –  APC •  Web Server –  Apache / Nginx / etc. •  Database –  MySQL / Postgres / etc. •  Operating System –  Ubuntu / Red Hat / etc.
  • 14. PHP in the Cloud •  It is easy to run a PHP site in the cloud •  It is HARD to run a PHP site in the cloud with… –  High availability –  High scalability –  High security
  • 15. PHP Cloud Hosting •  IaaS –  Amazon Web Services –  Rackspace Cloud •  PaaS –  PaaS: PHPfog / AppFog / PagodaBox / Heroku –  Drupal Cloud: Acquia Cloud / Pantheon •  Traditional Hosting –  Linode / Rackspace / etc.
  • 16. Setting up simple LAMP stack
  • 17. Complicated Cloud LAMP Stack Availability Zone A Availability Zone B Availability Zone A Availability Zone B BAL BAL BAL BAL Varnish Varnish Varnish Varnish nginx nginx nginx nginx WEB WEB WEB WEB Memcache Memcache Memcache Memcache APACHE APACHE APACHE APACHE Drupal Drupal Drupal Drupal User User User User via via via via Files Git/SVN Files Git/SVN Files Git/SVN Files Git/SVN FSDB FSDB FSDB FSDB User Files User Files User Files User Files GlusterFS GlusterFS GlusterFS GlusterFS Multiregion Replication MySQL MySQL MySQL MySQL Site A Site A Site A Site A Site B Site B Sites C/D Sites C & D Acquia Confidential
  • 18. Use a PaaS for your Startup PagodaBox AppFog Acquia Cloud
  • 19. PagodaBox Symfony Demo Create a free account on www.pagodabox.com Download simple site at github.com/syrneus/phpinthecloud
  • 20. PagodaBox Symfony Demo Name your new application and launch it
  • 21. PagodaBox Symfony Demo Setup your SSH keys so you can easily git push changes
  • 22. PagodaBox Symfony Demo Navigate to your code on the filesystem and push your website live!
  • 25. Drawception – Symfony at Scale •  Everything available as an API •  Doctrine ORM •  Twig template engine powered •  Hosted on PagodaBox HTML / mobile / Facebook views
  • 26. PHP – Lessons Learned •  Use a framework •  Don’t over engineer scalability •  Use an ORM •  Use UTC server time •  Use a template language (even if it is PHP) •  Plan for internationalization from the beginning •  Use UTF-8 for your Databases •  Version control APIs
  • 27. Why use PHP for a Startup? •  Trusted by some of the largest web companies in the world •  Amazing pool of developer talent •  PHP will not be your bottleneck in scalability •  Don’t reinvent the wheel. Also use PHP/ Drupal for elements of your startup like the website/blog/community/etc.
  • 28. Acquia - PHP @ Scale
  • 29. Questions? •  Tweet Me: @syrneus •  E-mail Me: purefire@gmail.com @syrneus - purefire@gmail.com - andrew.kenney@acquia.com purefire.com - linkedin.com/akenney - github.com/syrneus Ask me about Acquia!