SlideShare a Scribd company logo
1 of 69
Download to read offline
http://www.egeniq.com
                                             info@egeniq.com
                                                     @egeniq




PHP Development In The Cloud


                         Ivo Jansch
                     February 2011
Contents




           WARNING

           This is not Yet Another
           “Store files on Amazon S3” talk.




                                              2
What is the Cloud?




                     3
What is the Cloud?




                     4
Gartner’s Hype Cycle




                       5
Gartner’s Hype Cycle




                       6
Gartner’s Hype Cycle on Clouds




                                 7
Clouds According to NIST


 “Cloud computing is a model for enabling convenient, on-demand
     network access to a shared pool of configurable computing
    resources that can be rapidly provisioned and released with
      minimal management effort or service provider interaction.

   This cloud model promotes availability and is composed of five
      essential characteristics, three service models, and four
                       deployment models.”

             National Institute of Standards and Technology



     http://csrc.nist.gov/groups/SNS/cloud-computing/


                                                                    8
NIST: Five Characteristics




Things that are considered cloud:
‣   On-demand, self-service
‣   Broad network access
‣   Resource pooling
‣   Rapid elasticity
‣   Measured service



                                    9
NIST: Three Service Models




Cloud applications are:
‣ Software as a Service
‣ Platform as a Service
‣ Infrastructure as a Service



                                10
NIST: Four Deployment Models




‣   Private cloud
‣   Community cloud
‣   Public cloud
‣   Hybrid cloud




                               11
Infrastructure as a Service


                              12
Application Layers

Standard layers in a typical application:


        Application
     System Software
          Storage
    Operating System
         Hardware
         Network
                                            13
Infrastructure as a Service

Parts of the infrastructure offered as service to your app:


                      Application
     System Software
                 Storage
                 Operating System
                              Hardware
                                    Network
                                                              14
Infrastructure as a Service

‣ Pitfalls:
  • Vendor lock-in
  • Security
  • Integrity of the service provider


‣ Advantages:
  • Easily scalable
  • Move from capital expense to operational expense
  • Metered use
  • Don’t worry about hardware...




                                                       15
Infrastructure as a Service




                              16
The Hardware/OS Layer




‣ Typically offered as Virtual Machine images
‣ Gives ‘throw hardware at the problem’ a new dimension
‣ Elastic load balancing divides traffic over instances




                                                          17
Example: The Rackspace Cloud

‣ The RackspaceCloud is what used to be called Mosso

‣ Powerful API for managing your cloud

‣ Easy access in PHP through Aleksey Korzun’s PHP API:
 • http://github.com/AlekseyKorzun/php-cloudservers


‣ Concepts
 • Images (various operating systems)
 • Flavors (configuration: mem, cpu, disk)


                                                         18
The Rackspace Cloud in PHP




                             19
The Rackspace Cloud in PHP




                             20
Clouds for Development




‣ Private Cloud:
 • Flexible development environments
 • Easy to simulate large scale environments
 • Easy to set up multiple clusters




                                               21
Example: Terremark’s Infinicloud




                                   22
Terremark’s InfiniCloud




                          23
IaaS Architecture
Prepare your app to run on IaaS



                                  24
Horizontal Scalability




‣ If you run your app on multiple servers today, would it work?

‣ Typical problem areas:
  • Sessions
  • Files




                                                              25
Horizontal Scalability



‣ Danga - http://www.danga.com/
  • People behind LiveJournal / SixApart
  • Creators of tools to help make software horizontally scalable


  • Memcache - distributed caching, session clustering
    ‣ http://github.com/andreiz/php-memcached
  • MogileFS - distributed file storage
    ‣ http://projects.usrportage.de/index.fcgi/php-mogilefs
  • Gearman - distributed parallel job processing / message queue
    ‣ http://pecl.php.net/package/gearman/



                                                                    26
Elasticity




‣ Fewer bottlenecks
  • More elasticity
  • Easier to scale




                      27
Elasticity




             28
Elasticity




             29
Abstraction

 ‣ Abstract services where possible




                                      30
Abstraction

‣ Con:
 • Common denominator functionality
 • Adds some overhead



‣ Pro:
 • Reduce vendor lock-in
 • Increase flexibility
 • Save development time
 • No need to learn different APIs
 • Promotes competition between providers




                                            31
Abstraction

‣ Zend’s SimpleCloud
 • http://simplecloud.org
 • Good attempt at generic cloud abstraction




                                               32
Characteristics Of Your Application




‣   Service oriented
‣   Stateless
‣   Low coupling
‣   Modularity
‣   Interoperability




                                      33
Infra as a Service = SLA Hell?




‣ Find out service levels of infrastructure components
‣ Get proper support
‣ Create “What if...” scenarios
 • What if Amazon is down?
 • What if SupaDupaCloudStore goes bankrupt?

‣ Who owns the data?
‣ Pay attention to license agreements


                                                         34
Platform as a Service


                        35
Platform as a Service

Complete platform offered as a service:


         Application

      System Software
           Storage
     Operating System
         Hardware
          Network
                                          36
Platform as a Service




‣ Platform scales up and down as necessary


‣ Same pitfalls and advantages as IaaS, plus:
 • Don’t worry about scalability




                                                37
Platform as a Service




                        38
Google AppEngine

‣ http://code.google.com/appengine/
‣ Python and Java

‣ Able to run PHP via Quercus (Java PHP interpreter)
 •   http://www.webdigi.co.uk/blog/2009/run-php-on-the-google-app-engine/
 •   http://www.caucho.com/resin-3.0/quercus/




‣ Technology needs to prove itself
 • Example sites running on Quercus:
     ‣ http://www.webmonkey.com/
     ‣ http://www.style.com/stylefile/


                                                                            39
The Rackspace Cloud ‘Sites’




                              40
Rackspace’s TrueHybrid

‣ Platform selects the best operating system for your site
‣ Magically blends Windows and Linux, ASP.NET and PHP




                                                             41
Other Platforms for PHP

‣ NING
 • http://ning.com
 • Social Network PaaS

‣ Force.com
 • Salesforce cloud platform
 • Business applications

‣ PHPFog
 • http://phpfog.com
 • Cloud platform for PHP apps
 • Quite young, looks very promising



                                       42
Software as a Service


                        43
Software as a Service

Everything in the cloud:


         Application
      System Software
           Storage
     Operating System
          Hardware
          Network
                           44
Software as a Service



‣ Complete applications or application components
‣ Popular phrase: “We are moving our ... to the cloud”
‣ Examples:
 • Gmail
 • Google Apps (office apps, calendar, email)
 • Salesforce for CRM

‣ Often built on IaaS
 • Dropbox file sharing (makes use of Amazon S3 for storage)
 • Jungledisk backups (same)


                                                               45
Software as a Service




                        46
Example: Salesforce



‣ Gives access to all your data in Salesforce using SOAP
‣ PHP library available
‣ Documentation abundant
 • http://developer.force.com/


‣ Salesforce was SaaS way before term ‘cloud’ was coined
‣ Most developer friendly SaaS
 • Documentation
 • Sandbox functionality (paid)


                                                           47
Example: Salesforce




Source adapted from tutorial at http://www.mikesimonds.com

                                                             48
Example: Google Apps




‣ Many features available through Zend_Gdata_* in ZF
 • Information retrieval
 • Document storage
 • Calendering
 • Account Configuration




                                                       49
Example: Google Apps




                       50
General SaaS suggestions

‣ Want to work with X from PHP?
 • Google ‘X php api’ or ‘X php tutorial’
 • You’re almost never the first to want to work with it


‣ Cloud apps are easier to work with than most desktop/
  noncloud apps.

‣ Testing
 • You don’t want to jeopardize your production data
 • See if there is a sandbox feature (Salesforce has one)
 • If not, create test accounts


                                                            51
The ‘Warcraft Effect’

      Clouds are living entities that change when you’re not looking




                                                                       52
Creating SaaS


                53
Creating SaaS

‣ In 2 years Cloud Infrastructure will be a commodity
  • It’ll be all about application development



‣ Building an application for multiple users/customers

‣ Things to pay attention to:
  • Reliability (one customer getting in the way of another)
  • Security (competitors seeing each other’s data)
  • Deployment
  • Maintenance



                                                               54
Multi-Tenancy evolution




Source: http://msdn.microsoft.com/en-us/library/aa479069.aspx




                                                                55
Multi-tenant Databases




                         56
Multi-tenant Databases




                         57
Things to think about




‣   Privacy
‣   Shared data
‣   Collaboration
‣   Interoperability
‣   Vendor lock




                        58
Putting it all together
   Cloud Computing In Practice



                                 59
A Hybrid IT Cloud




                    60
A Hybrid IT Cloud




                    61
Summary
If you were sleeping, wake up now!



                                     62
Summary




‣ What is the Cloud?
 • The cloud = IaaS + PaaS + SaaS


‣ If you have trouble remembering:
 • Cloud = Platform, Infrastructure & Software as a Service


                                                              63
Summary


‣ With your next PHP application:
 • See if you can run it on a Cloud Platform
 • See if you can run parts on Cloud Infrastructure
 • See if you can use Software as a Service components
 • See if you can offer it as a service


 • Keep your architecture ‘cloud ready’


‣ Think about clouds!
 • In a couple of years, we’ll all be doing it


                                                         64
Food for Thought
Let’s leave you with something to think about



                                                65
Food for Thought

Are you worried about this?



                                         Cloud
                               Cloud
                              Provider
 Where’s my
  data?!




                                                 66
Food for Thought

Then what about this?



                                    Financial System
                             Bank
 Where’s my
  money?!




 Our money has been in the cloud since the 18th century!
                                                           67
http://www.egeniq.com
                                   info@egeniq.com
                                           @egeniq




Thank you! Questions?

    http://www.egeniq.com
           ivo@egeniq.com
                 @ijansch
Credits




Pictures used (under Creative Commons Attribution licenses)

Cloud (slide 3):
  http://flickr.com/photos/kables/6324973/

Cat + harddisk:
  http://flickr.com/photos/sirmildredpierce/42928070/ (adapted)

Rubber Band Man:
  http://flickr.com/photos/thenovys/3791884189/

Clipart used (royalty free and public domain)

  http://www.clker.com/

More Related Content

What's hot

Site Development Processes for Small Teams
Site Development Processes for Small TeamsSite Development Processes for Small Teams
Site Development Processes for Small TeamsJeff Segars
 
AFNetworking
AFNetworking AFNetworking
AFNetworking joaopmaia
 
Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015Kim Frehe
 
Native Android Development Practices
Native Android Development PracticesNative Android Development Practices
Native Android Development PracticesRoy Clarkson
 
Out of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOut of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOliver Busse
 
Drupal 8 and Pantheon
Drupal 8 and PantheonDrupal 8 and Pantheon
Drupal 8 and PantheonPantheon
 
Programmable infrastructure with FlyScript
Programmable infrastructure with FlyScriptProgrammable infrastructure with FlyScript
Programmable infrastructure with FlyScriptRiverbed Technology
 
360|Flex Recap - San Jose 2010
360|Flex Recap - San Jose 2010360|Flex Recap - San Jose 2010
360|Flex Recap - San Jose 2010David Ortinau
 
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"Daniel Bryant
 
FEVR - Micro Frontend
FEVR - Micro FrontendFEVR - Micro Frontend
FEVR - Micro FrontendMiki Lombardi
 

What's hot (10)

Site Development Processes for Small Teams
Site Development Processes for Small TeamsSite Development Processes for Small Teams
Site Development Processes for Small Teams
 
AFNetworking
AFNetworking AFNetworking
AFNetworking
 
Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015Highlights from microsoft ignite 2015
Highlights from microsoft ignite 2015
 
Native Android Development Practices
Native Android Development PracticesNative Android Development Practices
Native Android Development Practices
 
Out of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix developmentOut of the Blue: Getting started with IBM Bluemix development
Out of the Blue: Getting started with IBM Bluemix development
 
Drupal 8 and Pantheon
Drupal 8 and PantheonDrupal 8 and Pantheon
Drupal 8 and Pantheon
 
Programmable infrastructure with FlyScript
Programmable infrastructure with FlyScriptProgrammable infrastructure with FlyScript
Programmable infrastructure with FlyScript
 
360|Flex Recap - San Jose 2010
360|Flex Recap - San Jose 2010360|Flex Recap - San Jose 2010
360|Flex Recap - San Jose 2010
 
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
CNCF Webinar Series: "Creating an Effective Developer Experience on Kubernetes"
 
FEVR - Micro Frontend
FEVR - Micro FrontendFEVR - Micro Frontend
FEVR - Micro Frontend
 

Viewers also liked

Php & cloud computing
Php & cloud computingPhp & cloud computing
Php & cloud computingCorley S.r.l.
 
Merkatu Ikerkuntza 2. Gaia
Merkatu Ikerkuntza 2. GaiaMerkatu Ikerkuntza 2. Gaia
Merkatu Ikerkuntza 2. Gaiakatixa
 
Información científica
Información científicaInformación científica
Información científicamjordan
 
PfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio OverviewPfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio OverviewIvo Jansch
 
Erd Summer Day Camp "Kids Games" Friday
Erd Summer Day Camp "Kids Games" FridayErd Summer Day Camp "Kids Games" Friday
Erd Summer Day Camp "Kids Games" FridayChris Johnson
 
Enabling co-­creation of e-services through virtual worlds
Enabling co-­creation of e-services through virtual worldsEnabling co-­creation of e-services through virtual worlds
Enabling co-­creation of e-services through virtual worldsThomas Kohler
 
MDW - Mission-Directed Work Teams - Mini Negócios
MDW - Mission-Directed Work Teams - Mini NegóciosMDW - Mission-Directed Work Teams - Mini Negócios
MDW - Mission-Directed Work Teams - Mini NegóciosMarcos Pavani
 
Quazy quilters
Quazy quiltersQuazy quilters
Quazy quiltersburnsc62
 
Social Media for the Public Sector presentation - Connected Nottingham - 3 De...
Social Media for the Public Sector presentation - Connected Nottingham - 3 De...Social Media for the Public Sector presentation - Connected Nottingham - 3 De...
Social Media for the Public Sector presentation - Connected Nottingham - 3 De...simonwakeman
 
The girls are coming! Gender, youth and the new Basque literature
The girls are coming! Gender, youth and the new Basque literatureThe girls are coming! Gender, youth and the new Basque literature
The girls are coming! Gender, youth and the new Basque literaturekatixa
 

Viewers also liked (20)

Php & cloud computing
Php & cloud computingPhp & cloud computing
Php & cloud computing
 
Cassandra20141113
Cassandra20141113Cassandra20141113
Cassandra20141113
 
Merkatu Ikerkuntza 2. Gaia
Merkatu Ikerkuntza 2. GaiaMerkatu Ikerkuntza 2. Gaia
Merkatu Ikerkuntza 2. Gaia
 
Springbreak 21042009
Springbreak 21042009Springbreak 21042009
Springbreak 21042009
 
MapIt1418
MapIt1418MapIt1418
MapIt1418
 
Información científica
Información científicaInformación científica
Información científica
 
PfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio OverviewPfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio Overview
 
Gno
GnoGno
Gno
 
Kazenosamaritanovi
KazenosamaritanoviKazenosamaritanovi
Kazenosamaritanovi
 
Farizej a mýtnik
Farizej a mýtnikFarizej a mýtnik
Farizej a mýtnik
 
Erd Summer Day Camp "Kids Games" Friday
Erd Summer Day Camp "Kids Games" FridayErd Summer Day Camp "Kids Games" Friday
Erd Summer Day Camp "Kids Games" Friday
 
Enabling co-­creation of e-services through virtual worlds
Enabling co-­creation of e-services through virtual worldsEnabling co-­creation of e-services through virtual worlds
Enabling co-­creation of e-services through virtual worlds
 
Herodesov chram
Herodesov chramHerodesov chram
Herodesov chram
 
Pp úvod do 1 kor
Pp   úvod do 1 korPp   úvod do 1 kor
Pp úvod do 1 kor
 
MDW - Mission-Directed Work Teams - Mini Negócios
MDW - Mission-Directed Work Teams - Mini NegóciosMDW - Mission-Directed Work Teams - Mini Negócios
MDW - Mission-Directed Work Teams - Mini Negócios
 
Quazy quilters
Quazy quiltersQuazy quilters
Quazy quilters
 
Common H1B Cap 2017 Filing Mistakes: How To Avoid Them?
Common H1B Cap 2017 Filing Mistakes: How To Avoid Them?Common H1B Cap 2017 Filing Mistakes: How To Avoid Them?
Common H1B Cap 2017 Filing Mistakes: How To Avoid Them?
 
H1B 2017 Predictions: Will There Be A H-1B Lottery Again?
H1B 2017 Predictions: Will There Be A H-1B Lottery Again?H1B 2017 Predictions: Will There Be A H-1B Lottery Again?
H1B 2017 Predictions: Will There Be A H-1B Lottery Again?
 
Social Media for the Public Sector presentation - Connected Nottingham - 3 De...
Social Media for the Public Sector presentation - Connected Nottingham - 3 De...Social Media for the Public Sector presentation - Connected Nottingham - 3 De...
Social Media for the Public Sector presentation - Connected Nottingham - 3 De...
 
The girls are coming! Gender, youth and the new Basque literature
The girls are coming! Gender, youth and the new Basque literatureThe girls are coming! Gender, youth and the new Basque literature
The girls are coming! Gender, youth and the new Basque literature
 

Similar to Php Development In The Cloud

PHP and the Cloud: The view from the bazaar
PHP and the Cloud: The view from the bazaarPHP and the Cloud: The view from the bazaar
PHP and the Cloud: The view from the bazaarvitoc
 
Introduction to Cloud Computing 2021
Introduction to Cloud Computing 2021Introduction to Cloud Computing 2021
Introduction to Cloud Computing 2021Samuel Dratwa
 
InfoSec 2011: Crash Course Open Source Cloud Computing
InfoSec 2011: Crash Course Open Source Cloud ComputingInfoSec 2011: Crash Course Open Source Cloud Computing
InfoSec 2011: Crash Course Open Source Cloud ComputingMark Hinkle
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015WaveMaker, Inc.
 
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...IndicThreads
 
Linuxcon Europe 2011: Overview - Building Cloud Computing Environments
Linuxcon Europe 2011:  Overview - Building Cloud Computing EnvironmentsLinuxcon Europe 2011:  Overview - Building Cloud Computing Environments
Linuxcon Europe 2011: Overview - Building Cloud Computing EnvironmentsMark Hinkle
 
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the CloudMongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the CloudMongoDB
 
Cloud Computing Expo West - Crash Course in Open Source Cloud Computing
Cloud Computing Expo West - Crash Course in Open Source Cloud ComputingCloud Computing Expo West - Crash Course in Open Source Cloud Computing
Cloud Computing Expo West - Crash Course in Open Source Cloud ComputingMark Hinkle
 
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...Srijan Technologies
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSSteve Wong
 
RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?Erik Osterman
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Jack-Junjie Cai
 
LinuxFest Northwest: Crash Course in Open Source Cloud Computing
LinuxFest Northwest: Crash Course in Open Source Cloud Computing LinuxFest Northwest: Crash Course in Open Source Cloud Computing
LinuxFest Northwest: Crash Course in Open Source Cloud Computing Mark Hinkle
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...Ludovic Piot
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceDavid Currie
 
Cloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewCloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewAndy Piper
 
AWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid EnvironmentsAWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid EnvironmentsRightScale
 

Similar to Php Development In The Cloud (20)

PHP and the Cloud: The view from the bazaar
PHP and the Cloud: The view from the bazaarPHP and the Cloud: The view from the bazaar
PHP and the Cloud: The view from the bazaar
 
Avoiding cloud lock-in
Avoiding cloud lock-inAvoiding cloud lock-in
Avoiding cloud lock-in
 
Introduction to Cloud Computing 2021
Introduction to Cloud Computing 2021Introduction to Cloud Computing 2021
Introduction to Cloud Computing 2021
 
InfoSec 2011: Crash Course Open Source Cloud Computing
InfoSec 2011: Crash Course Open Source Cloud ComputingInfoSec 2011: Crash Course Open Source Cloud Computing
InfoSec 2011: Crash Course Open Source Cloud Computing
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
Current State of Affairs – Cloud Computing - Indicthreads Cloud Computing Con...
 
Linuxcon Europe 2011: Overview - Building Cloud Computing Environments
Linuxcon Europe 2011:  Overview - Building Cloud Computing EnvironmentsLinuxcon Europe 2011:  Overview - Building Cloud Computing Environments
Linuxcon Europe 2011: Overview - Building Cloud Computing Environments
 
Cloud computing: highlights
Cloud computing: highlightsCloud computing: highlights
Cloud computing: highlights
 
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the CloudMongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
 
Cloud Computing Expo West - Crash Course in Open Source Cloud Computing
Cloud Computing Expo West - Crash Course in Open Source Cloud ComputingCloud Computing Expo West - Crash Course in Open Source Cloud Computing
Cloud Computing Expo West - Crash Course in Open Source Cloud Computing
 
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OS
 
RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?RightScale User Conference: Why RightScale?
RightScale User Conference: Why RightScale?
 
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
Migrating Java EE applications to IBM Bluemix platform as-a-service (CloudFou...
 
LinuxFest Northwest: Crash Course in Open Source Cloud Computing
LinuxFest Northwest: Crash Course in Open Source Cloud Computing LinuxFest Northwest: Crash Course in Open Source Cloud Computing
LinuxFest Northwest: Crash Course in Open Source Cloud Computing
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-ServiceMigrating Java EE applications to IBM Bluemix Platform-as-a-Service
Migrating Java EE applications to IBM Bluemix Platform-as-a-Service
 
Cloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewCloud Foundry Introduction and Overview
Cloud Foundry Introduction and Overview
 
AWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid EnvironmentsAWS and VMware: How to Architect and Manage Hybrid Environments
AWS and VMware: How to Architect and Manage Hybrid Environments
 

More from Ivo Jansch

Own Your Apps
Own Your Apps Own Your Apps
Own Your Apps Ivo Jansch
 
PHP Development In The Cloud (php|tek edition)
PHP Development In The Cloud (php|tek edition)PHP Development In The Cloud (php|tek edition)
PHP Development In The Cloud (php|tek edition)Ivo Jansch
 
Building an SSO platform in PHP (Zend Webinar Edition)
Building an SSO platform in PHP (Zend Webinar Edition)Building an SSO platform in PHP (Zend Webinar Edition)
Building an SSO platform in PHP (Zend Webinar Edition)Ivo Jansch
 
The Business Case For Telecommuting
The Business Case For TelecommutingThe Business Case For Telecommuting
The Business Case For TelecommutingIvo Jansch
 
PHP in a mobile ecosystem
PHP in a mobile ecosystem PHP in a mobile ecosystem
PHP in a mobile ecosystem Ivo Jansch
 
27 Ways To Be A Better Developer (PHPBenelux 2011)
27 Ways To Be A Better Developer (PHPBenelux 2011)27 Ways To Be A Better Developer (PHPBenelux 2011)
27 Ways To Be A Better Developer (PHPBenelux 2011)Ivo Jansch
 
Building an SSO platform in php (Zendcon 2010)
Building an SSO platform in php (Zendcon 2010)Building an SSO platform in php (Zendcon 2010)
Building an SSO platform in php (Zendcon 2010)Ivo Jansch
 
PHP in a Mobile Ecosystem (Zendcon 2010)
PHP in a Mobile Ecosystem (Zendcon 2010)PHP in a Mobile Ecosystem (Zendcon 2010)
PHP in a Mobile Ecosystem (Zendcon 2010)Ivo Jansch
 
PHP and the Cloud (phpbenelux conference)
PHP and the Cloud (phpbenelux conference)PHP and the Cloud (phpbenelux conference)
PHP and the Cloud (phpbenelux conference)Ivo Jansch
 
Content Management Selection and Strategy
Content Management Selection and StrategyContent Management Selection and Strategy
Content Management Selection and StrategyIvo Jansch
 
PHP and the Cloud
PHP and the CloudPHP and the Cloud
PHP and the CloudIvo Jansch
 
PHP in the Real World
PHP in the Real WorldPHP in the Real World
PHP in the Real WorldIvo Jansch
 
Dynamic Languages In The Enterprise (4developers march 2009)
Dynamic Languages In The Enterprise (4developers march 2009)Dynamic Languages In The Enterprise (4developers march 2009)
Dynamic Languages In The Enterprise (4developers march 2009)Ivo Jansch
 
Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)Ivo Jansch
 
Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008Ivo Jansch
 
Enterprise PHP Development (Dutch PHP Conference 2008)
Enterprise PHP Development (Dutch PHP Conference 2008)Enterprise PHP Development (Dutch PHP Conference 2008)
Enterprise PHP Development (Dutch PHP Conference 2008)Ivo Jansch
 
Hello Enterprise, my name is PHP
Hello Enterprise, my name is PHPHello Enterprise, my name is PHP
Hello Enterprise, my name is PHPIvo Jansch
 
Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)Ivo Jansch
 
Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Ivo Jansch
 
Maatwerk Software
Maatwerk SoftwareMaatwerk Software
Maatwerk SoftwareIvo Jansch
 

More from Ivo Jansch (20)

Own Your Apps
Own Your Apps Own Your Apps
Own Your Apps
 
PHP Development In The Cloud (php|tek edition)
PHP Development In The Cloud (php|tek edition)PHP Development In The Cloud (php|tek edition)
PHP Development In The Cloud (php|tek edition)
 
Building an SSO platform in PHP (Zend Webinar Edition)
Building an SSO platform in PHP (Zend Webinar Edition)Building an SSO platform in PHP (Zend Webinar Edition)
Building an SSO platform in PHP (Zend Webinar Edition)
 
The Business Case For Telecommuting
The Business Case For TelecommutingThe Business Case For Telecommuting
The Business Case For Telecommuting
 
PHP in a mobile ecosystem
PHP in a mobile ecosystem PHP in a mobile ecosystem
PHP in a mobile ecosystem
 
27 Ways To Be A Better Developer (PHPBenelux 2011)
27 Ways To Be A Better Developer (PHPBenelux 2011)27 Ways To Be A Better Developer (PHPBenelux 2011)
27 Ways To Be A Better Developer (PHPBenelux 2011)
 
Building an SSO platform in php (Zendcon 2010)
Building an SSO platform in php (Zendcon 2010)Building an SSO platform in php (Zendcon 2010)
Building an SSO platform in php (Zendcon 2010)
 
PHP in a Mobile Ecosystem (Zendcon 2010)
PHP in a Mobile Ecosystem (Zendcon 2010)PHP in a Mobile Ecosystem (Zendcon 2010)
PHP in a Mobile Ecosystem (Zendcon 2010)
 
PHP and the Cloud (phpbenelux conference)
PHP and the Cloud (phpbenelux conference)PHP and the Cloud (phpbenelux conference)
PHP and the Cloud (phpbenelux conference)
 
Content Management Selection and Strategy
Content Management Selection and StrategyContent Management Selection and Strategy
Content Management Selection and Strategy
 
PHP and the Cloud
PHP and the CloudPHP and the Cloud
PHP and the Cloud
 
PHP in the Real World
PHP in the Real WorldPHP in the Real World
PHP in the Real World
 
Dynamic Languages In The Enterprise (4developers march 2009)
Dynamic Languages In The Enterprise (4developers march 2009)Dynamic Languages In The Enterprise (4developers march 2009)
Dynamic Languages In The Enterprise (4developers march 2009)
 
Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)Enterprise PHP (php|works 2008)
Enterprise PHP (php|works 2008)
 
Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008Enterprise PHP Development - ZendCon 2008
Enterprise PHP Development - ZendCon 2008
 
Enterprise PHP Development (Dutch PHP Conference 2008)
Enterprise PHP Development (Dutch PHP Conference 2008)Enterprise PHP Development (Dutch PHP Conference 2008)
Enterprise PHP Development (Dutch PHP Conference 2008)
 
Hello Enterprise, my name is PHP
Hello Enterprise, my name is PHPHello Enterprise, my name is PHP
Hello Enterprise, my name is PHP
 
Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)
 
Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)Enterprise PHP (PHP London Conference 2008)
Enterprise PHP (PHP London Conference 2008)
 
Maatwerk Software
Maatwerk SoftwareMaatwerk Software
Maatwerk Software
 

Recently uploaded

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
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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 CVKhem
 
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 Scriptwesley chun
 
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?Igalia
 
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 DevelopmentsTrustArc
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
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
 
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...Neo4j
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
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...Martijn de Jong
 
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 WorkerThousandEyes
 
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
 
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 2024Rafal Los
 
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
 
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.pdfUK Journal
 

Recently uploaded (20)

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)
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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
 
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
 
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?
 
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
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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
 
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...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
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...
 
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
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
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
 
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
 

Php Development In The Cloud

  • 1. http://www.egeniq.com info@egeniq.com @egeniq PHP Development In The Cloud Ivo Jansch February 2011
  • 2. Contents WARNING This is not Yet Another “Store files on Amazon S3” talk. 2
  • 3. What is the Cloud? 3
  • 4. What is the Cloud? 4
  • 8. Clouds According to NIST “Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model promotes availability and is composed of five essential characteristics, three service models, and four deployment models.” National Institute of Standards and Technology http://csrc.nist.gov/groups/SNS/cloud-computing/ 8
  • 9. NIST: Five Characteristics Things that are considered cloud: ‣ On-demand, self-service ‣ Broad network access ‣ Resource pooling ‣ Rapid elasticity ‣ Measured service 9
  • 10. NIST: Three Service Models Cloud applications are: ‣ Software as a Service ‣ Platform as a Service ‣ Infrastructure as a Service 10
  • 11. NIST: Four Deployment Models ‣ Private cloud ‣ Community cloud ‣ Public cloud ‣ Hybrid cloud 11
  • 12. Infrastructure as a Service 12
  • 13. Application Layers Standard layers in a typical application: Application System Software Storage Operating System Hardware Network 13
  • 14. Infrastructure as a Service Parts of the infrastructure offered as service to your app: Application System Software Storage Operating System Hardware Network 14
  • 15. Infrastructure as a Service ‣ Pitfalls: • Vendor lock-in • Security • Integrity of the service provider ‣ Advantages: • Easily scalable • Move from capital expense to operational expense • Metered use • Don’t worry about hardware... 15
  • 16. Infrastructure as a Service 16
  • 17. The Hardware/OS Layer ‣ Typically offered as Virtual Machine images ‣ Gives ‘throw hardware at the problem’ a new dimension ‣ Elastic load balancing divides traffic over instances 17
  • 18. Example: The Rackspace Cloud ‣ The RackspaceCloud is what used to be called Mosso ‣ Powerful API for managing your cloud ‣ Easy access in PHP through Aleksey Korzun’s PHP API: • http://github.com/AlekseyKorzun/php-cloudservers ‣ Concepts • Images (various operating systems) • Flavors (configuration: mem, cpu, disk) 18
  • 19. The Rackspace Cloud in PHP 19
  • 20. The Rackspace Cloud in PHP 20
  • 21. Clouds for Development ‣ Private Cloud: • Flexible development environments • Easy to simulate large scale environments • Easy to set up multiple clusters 21
  • 24. IaaS Architecture Prepare your app to run on IaaS 24
  • 25. Horizontal Scalability ‣ If you run your app on multiple servers today, would it work? ‣ Typical problem areas: • Sessions • Files 25
  • 26. Horizontal Scalability ‣ Danga - http://www.danga.com/ • People behind LiveJournal / SixApart • Creators of tools to help make software horizontally scalable • Memcache - distributed caching, session clustering ‣ http://github.com/andreiz/php-memcached • MogileFS - distributed file storage ‣ http://projects.usrportage.de/index.fcgi/php-mogilefs • Gearman - distributed parallel job processing / message queue ‣ http://pecl.php.net/package/gearman/ 26
  • 27. Elasticity ‣ Fewer bottlenecks • More elasticity • Easier to scale 27
  • 30. Abstraction ‣ Abstract services where possible 30
  • 31. Abstraction ‣ Con: • Common denominator functionality • Adds some overhead ‣ Pro: • Reduce vendor lock-in • Increase flexibility • Save development time • No need to learn different APIs • Promotes competition between providers 31
  • 32. Abstraction ‣ Zend’s SimpleCloud • http://simplecloud.org • Good attempt at generic cloud abstraction 32
  • 33. Characteristics Of Your Application ‣ Service oriented ‣ Stateless ‣ Low coupling ‣ Modularity ‣ Interoperability 33
  • 34. Infra as a Service = SLA Hell? ‣ Find out service levels of infrastructure components ‣ Get proper support ‣ Create “What if...” scenarios • What if Amazon is down? • What if SupaDupaCloudStore goes bankrupt? ‣ Who owns the data? ‣ Pay attention to license agreements 34
  • 35. Platform as a Service 35
  • 36. Platform as a Service Complete platform offered as a service: Application System Software Storage Operating System Hardware Network 36
  • 37. Platform as a Service ‣ Platform scales up and down as necessary ‣ Same pitfalls and advantages as IaaS, plus: • Don’t worry about scalability 37
  • 38. Platform as a Service 38
  • 39. Google AppEngine ‣ http://code.google.com/appengine/ ‣ Python and Java ‣ Able to run PHP via Quercus (Java PHP interpreter) • http://www.webdigi.co.uk/blog/2009/run-php-on-the-google-app-engine/ • http://www.caucho.com/resin-3.0/quercus/ ‣ Technology needs to prove itself • Example sites running on Quercus: ‣ http://www.webmonkey.com/ ‣ http://www.style.com/stylefile/ 39
  • 40. The Rackspace Cloud ‘Sites’ 40
  • 41. Rackspace’s TrueHybrid ‣ Platform selects the best operating system for your site ‣ Magically blends Windows and Linux, ASP.NET and PHP 41
  • 42. Other Platforms for PHP ‣ NING • http://ning.com • Social Network PaaS ‣ Force.com • Salesforce cloud platform • Business applications ‣ PHPFog • http://phpfog.com • Cloud platform for PHP apps • Quite young, looks very promising 42
  • 43. Software as a Service 43
  • 44. Software as a Service Everything in the cloud: Application System Software Storage Operating System Hardware Network 44
  • 45. Software as a Service ‣ Complete applications or application components ‣ Popular phrase: “We are moving our ... to the cloud” ‣ Examples: • Gmail • Google Apps (office apps, calendar, email) • Salesforce for CRM ‣ Often built on IaaS • Dropbox file sharing (makes use of Amazon S3 for storage) • Jungledisk backups (same) 45
  • 46. Software as a Service 46
  • 47. Example: Salesforce ‣ Gives access to all your data in Salesforce using SOAP ‣ PHP library available ‣ Documentation abundant • http://developer.force.com/ ‣ Salesforce was SaaS way before term ‘cloud’ was coined ‣ Most developer friendly SaaS • Documentation • Sandbox functionality (paid) 47
  • 48. Example: Salesforce Source adapted from tutorial at http://www.mikesimonds.com 48
  • 49. Example: Google Apps ‣ Many features available through Zend_Gdata_* in ZF • Information retrieval • Document storage • Calendering • Account Configuration 49
  • 51. General SaaS suggestions ‣ Want to work with X from PHP? • Google ‘X php api’ or ‘X php tutorial’ • You’re almost never the first to want to work with it ‣ Cloud apps are easier to work with than most desktop/ noncloud apps. ‣ Testing • You don’t want to jeopardize your production data • See if there is a sandbox feature (Salesforce has one) • If not, create test accounts 51
  • 52. The ‘Warcraft Effect’ Clouds are living entities that change when you’re not looking 52
  • 54. Creating SaaS ‣ In 2 years Cloud Infrastructure will be a commodity • It’ll be all about application development ‣ Building an application for multiple users/customers ‣ Things to pay attention to: • Reliability (one customer getting in the way of another) • Security (competitors seeing each other’s data) • Deployment • Maintenance 54
  • 58. Things to think about ‣ Privacy ‣ Shared data ‣ Collaboration ‣ Interoperability ‣ Vendor lock 58
  • 59. Putting it all together Cloud Computing In Practice 59
  • 60. A Hybrid IT Cloud 60
  • 61. A Hybrid IT Cloud 61
  • 62. Summary If you were sleeping, wake up now! 62
  • 63. Summary ‣ What is the Cloud? • The cloud = IaaS + PaaS + SaaS ‣ If you have trouble remembering: • Cloud = Platform, Infrastructure & Software as a Service 63
  • 64. Summary ‣ With your next PHP application: • See if you can run it on a Cloud Platform • See if you can run parts on Cloud Infrastructure • See if you can use Software as a Service components • See if you can offer it as a service • Keep your architecture ‘cloud ready’ ‣ Think about clouds! • In a couple of years, we’ll all be doing it 64
  • 65. Food for Thought Let’s leave you with something to think about 65
  • 66. Food for Thought Are you worried about this? Cloud Cloud Provider Where’s my data?! 66
  • 67. Food for Thought Then what about this? Financial System Bank Where’s my money?! Our money has been in the cloud since the 18th century! 67
  • 68. http://www.egeniq.com info@egeniq.com @egeniq Thank you! Questions? http://www.egeniq.com ivo@egeniq.com @ijansch
  • 69. Credits Pictures used (under Creative Commons Attribution licenses) Cloud (slide 3): http://flickr.com/photos/kables/6324973/ Cat + harddisk: http://flickr.com/photos/sirmildredpierce/42928070/ (adapted) Rubber Band Man: http://flickr.com/photos/thenovys/3791884189/ Clipart used (royalty free and public domain) http://www.clker.com/