SlideShare a Scribd company logo
1 of 70
Ivo Jansch
Zendcon 2009, October 21st
PHP and the Cloud
http://joind.in/915
donderdag 22 oktober 2009
Contents
WARNING
This is not Yet Another
“Store files on Amazon S3” talk.
2
donderdag 22 oktober 2009
What is the Cloud?
3
donderdag 22 oktober 2009
What is the Cloud?
4
donderdag 22 oktober 2009
Gartner’s Hype Cycle
5
donderdag 22 oktober 2009
Gartner’s Hype Cycle
6
donderdag 22 oktober 2009
Gartner’s Hype Cycle on Clouds
7
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
NIST: Five Characteristics
Things that are considered cloud:
On-demand, self-service
Broad network access
Resource pooling
Rapid elasticity
Measured service
9
donderdag 22 oktober 2009
NIST: Three Service Models
Cloud applications are:
Software as a Service
Platform as a Service
Infrastructure as a Service
10
donderdag 22 oktober 2009
NIST: Four Deployment Models
Private cloud
Community cloud
Public cloud
Hybrid cloud
11
donderdag 22 oktober 2009
Infrastructure as a Service
12
donderdag 22 oktober 2009
Application Layers
13
Network
Hardware
Operating System
Storage
System Software
Application
Standard layers in a typical application:
donderdag 22 oktober 2009
Infrastructure as a Service
Parts of the infrastructure offered as service to your app:
14
Network
Hardware
Operating System
Storage
System Software
Application
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Infrastructure as a Service
16
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
The Rackspace Cloud in PHP
19
donderdag 22 oktober 2009
The Rackspace Cloud in PHP
20
donderdag 22 oktober 2009
Clouds for Development
Private Cloud:
• Flexible development environments
• Easy to simulate large scale environments
• Easy to set up multiple clusters
21
donderdag 22 oktober 2009
Example: Terremark’s Infinicloud
22
donderdag 22 oktober 2009
Terremark’s InfiniCloud
23
donderdag 22 oktober 2009
IaaS Architecture
Prepare your app to run on IaaS
24
donderdag 22 oktober 2009
Horizontal Scalability
If you run your app on multiple servers today, would it work?
Typical problem areas:
• Sessions
• Files
25
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Elasticity
Fewer bottlenecks
• More elasticity
• Easier to scale
27
donderdag 22 oktober 2009
Elasticity
28
donderdag 22 oktober 2009
Elasticity
29
donderdag 22 oktober 2009
Abstraction
Abstract services where possible
30
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Abstraction
Zend’s SimpleCloud
• http://simplecloud.org
• Good attempt at generic cloud abstraction
• Thursday 9.15, talk by Wil Sinclair, Ballroom
32
donderdag 22 oktober 2009
Characteristics Of Your App
Service oriented
Stateless
Low coupling
Modularity
Interoperability
33
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Platform as a Service
35
donderdag 22 oktober 2009
Platform as a Service
Complete platform offered as a service:
36
Network
Hardware
Operating System
Storage
System Software
Application
donderdag 22 oktober 2009
Platform as a Service
Platform scales up and down as necessary
Same pitfalls and advantages as IaaS, plus:
• Don’t worry about scalability
37
donderdag 22 oktober 2009
Platform as a Service
38
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
The Rackspace Cloud ‘Sites’
40
donderdag 22 oktober 2009
Rackspace’s TrueHybrid
Platform selects the best operating system for your site
Magically blends Windows and Linux, ASP.NET and PHP
41
donderdag 22 oktober 2009
Other Platforms for PHP
NING
• http://ning.com
• Social Network PaaS
Force.com
• Salesforce cloud platform
• Business applications
Overall no serious enough candidate yet
• Somebody should create an AppEngine for PHP
42
donderdag 22 oktober 2009
Software as a Service
43
donderdag 22 oktober 2009
Software as a Service
Everything in the cloud:
44
Network
Hardware
Operating System
Storage
System Software
Application
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Software as a Service
46
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Example: Salesforce
48
Source adapted from tutorial at http://www.mikesimonds.com
donderdag 22 oktober 2009
Example: Google Apps
Many features available through Zend_Gdata_* in ZF
• Information retrieval
• Document storage
• Calendering
• Account Configuration
49
donderdag 22 oktober 2009
Example: Google Apps
50
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
The ‘Warcraft Effect’
Clouds are living entities that change when you’re not looking
52
donderdag 22 oktober 2009
Creating SaaS
53
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Multi-Tenancy evolution
Source: http://msdn.microsoft.com/en-us/library/aa479069.aspx
55
donderdag 22 oktober 2009
Multi-tenant Databases
56
donderdag 22 oktober 2009
Multi-tenant Databases
57
donderdag 22 oktober 2009
Things to think about
Privacy
Shared data
Collaboration
Interoperability
Vendor lock
58
donderdag 22 oktober 2009
Putting it all together
How we use Cloud Technology @ Ibuildings
59
donderdag 22 oktober 2009
The IT Cloud @ Ibuildings
60
donderdag 22 oktober 2009
The IT Cloud @ Ibuildings
61
donderdag 22 oktober 2009
Summary
If you were sleeping, wake up now!
62
donderdag 22 oktober 2009
Summary
What is the Cloud?
• The cloud = IaaS + PaaS + SaaS
If you have trouble remembering:
• Cloud = Platform, Infrastructure & Software as a Service
63
donderdag 22 oktober 2009
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
donderdag 22 oktober 2009
Food for Thought
Let’s leave you with something to think about
65
donderdag 22 oktober 2009
Food for Thought
Are you worried about this?
66
Cloud
Where’s my
data?!
Cloud
Provider
donderdag 22 oktober 2009
Food for Thought
Then what about this?
67
Financial System
Where’s my
money?!
Bank
Our money has been in the cloud since the 18th century!
donderdag 22 oktober 2009
Questions ?
68
donderdag 22 oktober 2009
Links & credits
Please comment on this talk here: http://joind.in/915
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/
69
donderdag 22 oktober 2009
Thank you!
Contact details:
Ivo Jansch - ivo@ibuildings.com
http://www.ibuildings.com
http://www.jansch.nl
twitter: ijansch
http://joind.in/915
donderdag 22 oktober 2009

More Related Content

What's hot

An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...
An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...
An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...ShapeBlue
 
Securing Enterprise Assets In The Cloud
Securing Enterprise Assets In The CloudSecuring Enterprise Assets In The Cloud
Securing Enterprise Assets In The CloudChris Purrington
 
LinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xenLinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xenThe Linux Foundation
 
Cloud Computing - Does Every Cloud Have a Silver Lining?
Cloud Computing - Does Every Cloud Have a Silver Lining?Cloud Computing - Does Every Cloud Have a Silver Lining?
Cloud Computing - Does Every Cloud Have a Silver Lining?Steve Cast
 
Securing Your Cloud With the Xen Hypervisor by Russell Pavlicek
Securing Your Cloud With the Xen Hypervisor by Russell PavlicekSecuring Your Cloud With the Xen Hypervisor by Russell Pavlicek
Securing Your Cloud With the Xen Hypervisor by Russell Pavlicekbuildacloud
 
S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4Tony Pearson
 
Open stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloudOpen stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloudKamesh Pemmaraju
 
Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP The Linux Foundation
 
4156 Twist and cloud-how ibm customers make cics dance
4156 Twist and cloud-how ibm customers make cics dance4156 Twist and cloud-how ibm customers make cics dance
4156 Twist and cloud-how ibm customers make cics dancenick_garrod
 
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...The Linux Foundation
 
Am 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalAm 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalOpenCity Community
 
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS AssuranceSLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurancetcucinotta
 
Chi next gen-ntino-krampis
Chi next gen-ntino-krampisChi next gen-ntino-krampis
Chi next gen-ntino-krampisNtino Krampis
 
Scaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud ServersScaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud ServersThe Linux Foundation
 
XPDDS18: LCC18: Xen Project: After 15 years, What's Next? - George Dunlap, C...
XPDDS18: LCC18:  Xen Project: After 15 years, What's Next? - George Dunlap, C...XPDDS18: LCC18:  Xen Project: After 15 years, What's Next? - George Dunlap, C...
XPDDS18: LCC18: Xen Project: After 15 years, What's Next? - George Dunlap, C...The Linux Foundation
 

What's hot (20)

An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...
An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...
An introduction to Citrix CloudPlatform (powered by Apache CloudStack), Citri...
 
Securing Enterprise Assets In The Cloud
Securing Enterprise Assets In The CloudSecuring Enterprise Assets In The Cloud
Securing Enterprise Assets In The Cloud
 
LinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xenLinuxCon NA 2012: Virtualization in the cloud featuring xen
LinuxCon NA 2012: Virtualization in the cloud featuring xen
 
Cloud Computing - Does Every Cloud Have a Silver Lining?
Cloud Computing - Does Every Cloud Have a Silver Lining?Cloud Computing - Does Every Cloud Have a Silver Lining?
Cloud Computing - Does Every Cloud Have a Silver Lining?
 
Securing Your Cloud With the Xen Hypervisor by Russell Pavlicek
Securing Your Cloud With the Xen Hypervisor by Russell PavlicekSecuring Your Cloud With the Xen Hypervisor by Russell Pavlicek
Securing Your Cloud With the Xen Hypervisor by Russell Pavlicek
 
BSDcon Asia 2015: Xen on FreeBSD
BSDcon Asia 2015: Xen on FreeBSDBSDcon Asia 2015: Xen on FreeBSD
BSDcon Asia 2015: Xen on FreeBSD
 
S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4S cv0879 cloud-storage-options-edge2015-v4
S cv0879 cloud-storage-options-edge2015-v4
 
Chep2012
Chep2012Chep2012
Chep2012
 
Intro to Cloudstack
Intro to CloudstackIntro to Cloudstack
Intro to Cloudstack
 
Open stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloudOpen stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloud
 
Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP Scale11x : Virtualization with Xen and XCP
Scale11x : Virtualization with Xen and XCP
 
4156 Twist and cloud-how ibm customers make cics dance
4156 Twist and cloud-how ibm customers make cics dance4156 Twist and cloud-how ibm customers make cics dance
4156 Twist and cloud-how ibm customers make cics dance
 
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
XPDDS19: Argo and Hypervisor-Mediated Data eXchange (HMX) - Christopher Clark...
 
Am 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-finalAm 04 track1--salvatore orlando--openstack-apac-2012-final
Am 04 track1--salvatore orlando--openstack-apac-2012-final
 
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS AssuranceSLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
 
2010 xen-lisa
2010 xen-lisa2010 xen-lisa
2010 xen-lisa
 
Xen and Apache cloudstack
Xen and Apache cloudstack  Xen and Apache cloudstack
Xen and Apache cloudstack
 
Chi next gen-ntino-krampis
Chi next gen-ntino-krampisChi next gen-ntino-krampis
Chi next gen-ntino-krampis
 
Scaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud ServersScaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud Servers
 
XPDDS18: LCC18: Xen Project: After 15 years, What's Next? - George Dunlap, C...
XPDDS18: LCC18:  Xen Project: After 15 years, What's Next? - George Dunlap, C...XPDDS18: LCC18:  Xen Project: After 15 years, What's Next? - George Dunlap, C...
XPDDS18: LCC18: Xen Project: After 15 years, What's Next? - George Dunlap, C...
 

Viewers also liked

PfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio OverviewPfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio OverviewIvo Jansch
 
Quiltslides
QuiltslidesQuiltslides
Quiltslidesburnsc62
 
The future of Facebook fundraising - IoF National Convention 2012
The future of Facebook fundraising - IoF National Convention 2012The future of Facebook fundraising - IoF National Convention 2012
The future of Facebook fundraising - IoF National Convention 2012Jonathan Waddingham
 
我是产品经理我需不需要学技术
我是产品经理我需不需要学技术我是产品经理我需不需要学技术
我是产品经理我需不需要学技术easychen
 
Mobile internet and local government
Mobile internet and local governmentMobile internet and local government
Mobile internet and local governmentsimonwakeman
 
Shakespeare revealed 02.ppt
Shakespeare revealed 02.pptShakespeare revealed 02.ppt
Shakespeare revealed 02.pptrwakefor
 
Zie2007 - Web 2.0
Zie2007 - Web 2.0Zie2007 - Web 2.0
Zie2007 - Web 2.0Ivo Jansch
 
Multiple Reality Mashup: Teleconferencing in Second Life
Multiple Reality Mashup: Teleconferencing in Second LifeMultiple Reality Mashup: Teleconferencing in Second Life
Multiple Reality Mashup: Teleconferencing in Second Lifeccosmato
 
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
 
生命銀行
生命銀行生命銀行
生命銀行Cola Cat
 
Social media: a revolution in local government communications?
Social media: a revolution in local government communications? Social media: a revolution in local government communications?
Social media: a revolution in local government communications? simonwakeman
 
Agiler without a schema @forward
Agiler without a schema @forwardAgiler without a schema @forward
Agiler without a schema @forwardAntonio Terreno
 
Social Media - Apply it to your Company Website
Social Media - Apply it to your Company WebsiteSocial Media - Apply it to your Company Website
Social Media - Apply it to your Company Websitenatalierebot
 

Viewers also liked (20)

Fotomuseum
FotomuseumFotomuseum
Fotomuseum
 
PfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio OverviewPfCongrez 2007 Zend Studio Overview
PfCongrez 2007 Zend Studio Overview
 
Kazen evanjelizacia&ucenictvo-16.02.2014
Kazen evanjelizacia&ucenictvo-16.02.2014Kazen evanjelizacia&ucenictvo-16.02.2014
Kazen evanjelizacia&ucenictvo-16.02.2014
 
Quiltslides
QuiltslidesQuiltslides
Quiltslides
 
The future of Facebook fundraising - IoF National Convention 2012
The future of Facebook fundraising - IoF National Convention 2012The future of Facebook fundraising - IoF National Convention 2012
The future of Facebook fundraising - IoF National Convention 2012
 
我是产品经理我需不需要学技术
我是产品经理我需不需要学技术我是产品经理我需不需要学技术
我是产品经理我需不需要学技术
 
Mobile internet and local government
Mobile internet and local governmentMobile internet and local government
Mobile internet and local government
 
Ako hľadajú boha extroverti ppt
Ako hľadajú boha extroverti pptAko hľadajú boha extroverti ppt
Ako hľadajú boha extroverti ppt
 
Shakespeare revealed 02.ppt
Shakespeare revealed 02.pptShakespeare revealed 02.ppt
Shakespeare revealed 02.ppt
 
Zie2007 - Web 2.0
Zie2007 - Web 2.0Zie2007 - Web 2.0
Zie2007 - Web 2.0
 
Multiple Reality Mashup: Teleconferencing in Second Life
Multiple Reality Mashup: Teleconferencing in Second LifeMultiple Reality Mashup: Teleconferencing in Second Life
Multiple Reality Mashup: Teleconferencing in Second Life
 
Jur piesen-ako-modlitba-2011
Jur  piesen-ako-modlitba-2011Jur  piesen-ako-modlitba-2011
Jur piesen-ako-modlitba-2011
 
Bovil DDB
Bovil DDBBovil DDB
Bovil DDB
 
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
 
Voordekunst
VoordekunstVoordekunst
Voordekunst
 
生命銀行
生命銀行生命銀行
生命銀行
 
Social media: a revolution in local government communications?
Social media: a revolution in local government communications? Social media: a revolution in local government communications?
Social media: a revolution in local government communications?
 
PALM2 Brochure.pdf
PALM2 Brochure.pdfPALM2 Brochure.pdf
PALM2 Brochure.pdf
 
Agiler without a schema @forward
Agiler without a schema @forwardAgiler without a schema @forward
Agiler without a schema @forward
 
Social Media - Apply it to your Company Website
Social Media - Apply it to your Company WebsiteSocial Media - Apply it to your Company Website
Social Media - Apply it to your Company Website
 

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
 
Mobile for PHP developers
Mobile for PHP developersMobile for PHP developers
Mobile for PHP developersIvo 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 Development In The Cloud
Php Development In The CloudPhp Development In The Cloud
Php Development In The CloudIvo 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 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
 

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)
 
Mobile for PHP developers
Mobile for PHP developersMobile for PHP developers
Mobile for PHP developers
 
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 Development In The Cloud
Php Development In The CloudPhp Development In The Cloud
Php Development In The Cloud
 
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 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)
 

PHP and the Cloud

  • 1. Ivo Jansch Zendcon 2009, October 21st PHP and the Cloud http://joind.in/915 donderdag 22 oktober 2009
  • 2. Contents WARNING This is not Yet Another “Store files on Amazon S3” talk. 2 donderdag 22 oktober 2009
  • 3. What is the Cloud? 3 donderdag 22 oktober 2009
  • 4. What is the Cloud? 4 donderdag 22 oktober 2009
  • 7. Gartner’s Hype Cycle on Clouds 7 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 9. NIST: Five Characteristics Things that are considered cloud: On-demand, self-service Broad network access Resource pooling Rapid elasticity Measured service 9 donderdag 22 oktober 2009
  • 10. NIST: Three Service Models Cloud applications are: Software as a Service Platform as a Service Infrastructure as a Service 10 donderdag 22 oktober 2009
  • 11. NIST: Four Deployment Models Private cloud Community cloud Public cloud Hybrid cloud 11 donderdag 22 oktober 2009
  • 12. Infrastructure as a Service 12 donderdag 22 oktober 2009
  • 13. Application Layers 13 Network Hardware Operating System Storage System Software Application Standard layers in a typical application: donderdag 22 oktober 2009
  • 14. Infrastructure as a Service Parts of the infrastructure offered as service to your app: 14 Network Hardware Operating System Storage System Software Application donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 16. Infrastructure as a Service 16 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 19. The Rackspace Cloud in PHP 19 donderdag 22 oktober 2009
  • 20. The Rackspace Cloud in PHP 20 donderdag 22 oktober 2009
  • 21. Clouds for Development Private Cloud: • Flexible development environments • Easy to simulate large scale environments • Easy to set up multiple clusters 21 donderdag 22 oktober 2009
  • 24. IaaS Architecture Prepare your app to run on IaaS 24 donderdag 22 oktober 2009
  • 25. Horizontal Scalability If you run your app on multiple servers today, would it work? Typical problem areas: • Sessions • Files 25 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 27. Elasticity Fewer bottlenecks • More elasticity • Easier to scale 27 donderdag 22 oktober 2009
  • 30. Abstraction Abstract services where possible 30 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 32. Abstraction Zend’s SimpleCloud • http://simplecloud.org • Good attempt at generic cloud abstraction • Thursday 9.15, talk by Wil Sinclair, Ballroom 32 donderdag 22 oktober 2009
  • 33. Characteristics Of Your App Service oriented Stateless Low coupling Modularity Interoperability 33 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 35. Platform as a Service 35 donderdag 22 oktober 2009
  • 36. Platform as a Service Complete platform offered as a service: 36 Network Hardware Operating System Storage System Software Application donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 38. Platform as a Service 38 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 40. The Rackspace Cloud ‘Sites’ 40 donderdag 22 oktober 2009
  • 41. Rackspace’s TrueHybrid Platform selects the best operating system for your site Magically blends Windows and Linux, ASP.NET and PHP 41 donderdag 22 oktober 2009
  • 42. Other Platforms for PHP NING • http://ning.com • Social Network PaaS Force.com • Salesforce cloud platform • Business applications Overall no serious enough candidate yet • Somebody should create an AppEngine for PHP 42 donderdag 22 oktober 2009
  • 43. Software as a Service 43 donderdag 22 oktober 2009
  • 44. Software as a Service Everything in the cloud: 44 Network Hardware Operating System Storage System Software Application donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 46. Software as a Service 46 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 48. Example: Salesforce 48 Source adapted from tutorial at http://www.mikesimonds.com donderdag 22 oktober 2009
  • 49. Example: Google Apps Many features available through Zend_Gdata_* in ZF • Information retrieval • Document storage • Calendering • Account Configuration 49 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 52. The ‘Warcraft Effect’ Clouds are living entities that change when you’re not looking 52 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 58. Things to think about Privacy Shared data Collaboration Interoperability Vendor lock 58 donderdag 22 oktober 2009
  • 59. Putting it all together How we use Cloud Technology @ Ibuildings 59 donderdag 22 oktober 2009
  • 60. The IT Cloud @ Ibuildings 60 donderdag 22 oktober 2009
  • 61. The IT Cloud @ Ibuildings 61 donderdag 22 oktober 2009
  • 62. Summary If you were sleeping, wake up now! 62 donderdag 22 oktober 2009
  • 63. Summary What is the Cloud? • The cloud = IaaS + PaaS + SaaS If you have trouble remembering: • Cloud = Platform, Infrastructure & Software as a Service 63 donderdag 22 oktober 2009
  • 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 donderdag 22 oktober 2009
  • 65. Food for Thought Let’s leave you with something to think about 65 donderdag 22 oktober 2009
  • 66. Food for Thought Are you worried about this? 66 Cloud Where’s my data?! Cloud Provider donderdag 22 oktober 2009
  • 67. Food for Thought Then what about this? 67 Financial System Where’s my money?! Bank Our money has been in the cloud since the 18th century! donderdag 22 oktober 2009
  • 69. Links & credits Please comment on this talk here: http://joind.in/915 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/ 69 donderdag 22 oktober 2009
  • 70. Thank you! Contact details: Ivo Jansch - ivo@ibuildings.com http://www.ibuildings.com http://www.jansch.nl twitter: ijansch http://joind.in/915 donderdag 22 oktober 2009