http://www.egeniq.com                                                        info@egeniq.com                              ...
What is the Cloud?                               2Wednesday, May 25, 2011
What is the Cloud?                               3Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 4Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle                                 5Wednesday, May 25, 2011
Gartner’s Hype Cycle on Clouds                                           6Wednesday, May 25, 2011
Clouds According to NIST               “Cloud computing is a model for enabling convenient, on-demand                   ne...
NIST: Five Characteristics         Things that are considered cloud:          ‣    On-demand, self-service          ‣    B...
NIST: Three Service Models         Cloud applications are:          ‣ Software as a Service          ‣ Platform as a Servi...
NIST: Four Deployment Models          ‣    Private cloud          ‣    Community cloud          ‣    Public cloud         ...
Infrastructure as a Service                                                        11Wednesday, May 25, 2011
Application Layers            Standard layers in a typical application:                            Application            ...
Infrastructure as a Service            Parts of the infrastructure offered as service to your app:                        ...
Infrastructure as a Service          ‣ Advantages:              • Easily scalable              • Move from capital expense...
Example: The Rackspace Cloud          ‣ The RackspaceCloud is what used to be called Mosso          ‣ Powerful API for man...
The Rackspace Cloud in PHP                                       16Wednesday, May 25, 2011
The Rackspace Cloud in PHP                                       17Wednesday, May 25, 2011
IaaS Architecture                          Prepare your app to run on IaaS                                                ...
Horizontal Scalability          ‣ If you run your app on multiple servers today, would it work?          ‣ Typical problem...
Horizontal Scalability          ‣ Danga - http://www.danga.com/              • People behind LiveJournal / SixApart       ...
Elasticity                          21Wednesday, May 25, 2011
Elasticity                          22Wednesday, May 25, 2011
Abstraction             ‣ Abstract services where possible                                                  23Wednesday, M...
Abstraction                          24Wednesday, May 25, 2011
Abstraction          ‣ Con:                          24Wednesday, May 25, 2011
Abstraction          ‣ Con:              • Common denominator functionality                                               ...
Abstraction          ‣ Con:              • Common denominator functionality              • Adds some overhead             ...
Abstraction          ‣ Con:              • Common denominator functionality              • Adds some overhead          ‣ P...
Abstraction          ‣ Con:              • Common denominator functionality              • Adds some overhead          ‣ P...
Abstraction          ‣ Con:              • Common denominator functionality              • Adds some overhead          ‣ P...
Abstraction          ‣ Con:              • Common denominator functionality              • Adds some overhead          ‣ P...
Abstraction          ‣ Zend’s SimpleCloud              • http://simplecloud.org              • Good attempt at generic clo...
Platform as a Service                                                  26Wednesday, May 25, 2011
Platform as a Service            Complete platform offered as a service:                             Application          ...
The Rackspace Cloud ‘Sites’                                        28Wednesday, May 25, 2011
Rackspace’s TrueHybrid          ‣ Platform selects the best operating system for your site          ‣ Magically blends Win...
Other Platforms for PHP                                    30Wednesday, May 25, 2011
Other Platforms for PHP          ‣ PHPFog              • http://phpfog.com          ‣ Orchestra.io                        ...
Other Platforms for PHP          ‣ PHPFog              • http://phpfog.com          ‣ Orchestra.io              • http://o...
Other Platforms for PHP          ‣ PHPFog              • http://phpfog.com          ‣ Orchestra.io              • http://o...
Other Platforms for PHP          ‣ PHPFog              • http://phpfog.com          ‣ Orchestra.io              • http://o...
Other Platforms for PHP          ‣ PHPFog              • http://phpfog.com          ‣ Orchestra.io              • http://o...
Other Platforms for PHP          ‣ PHPFog              • http://phpfog.com          ‣ Orchestra.io              • http://o...
Software as a Service                                                  31Wednesday, May 25, 2011
Software as a Service            Everything in the cloud:                             Application                         ...
Software as a Service                                  33Wednesday, May 25, 2011
Software as a Service          ‣ Complete applications or application components                                          ...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Software as a Service          ‣ Complete applications or application components          ‣ Popular phrase: “We are moving...
Example: Salesforce          ‣ Gives access to all your data in Salesforce using SOAP          ‣ PHP library available    ...
Example: Salesforce     Source adapted from tutorial at http://www.mikesimonds.com                                        ...
Example: Google Apps                                 36Wednesday, May 25, 2011
General SaaS suggestions                                     37Wednesday, May 25, 2011
General SaaS suggestions                                     37Wednesday, May 25, 2011
General SaaS suggestions                                     37Wednesday, May 25, 2011
General SaaS suggestions          ‣ Want to work with X from PHP?                                            37Wednesday, ...
General SaaS suggestions          ‣ Want to work with X from PHP?              • Google ‘X php api’ or ‘X php tutorial’   ...
General SaaS suggestions          ‣ Want to work with X from PHP?              • Google ‘X php api’ or ‘X php tutorial’   ...
General SaaS suggestions          ‣ Want to work with X from PHP?              • Google ‘X php api’ or ‘X php tutorial’   ...
General SaaS suggestions          ‣ Want to work with X from PHP?              • Google ‘X php api’ or ‘X php tutorial’   ...
The ‘Warcraft Effect’                          Clouds are living entities that change when you’re not looking             ...
Creating SaaS                                          39Wednesday, May 25, 2011
Creating SaaS                          40Wednesday, May 25, 2011
Creating SaaS          ‣ Building a single application for multiple users/customers                                       ...
Creating SaaS          ‣ Building a single application for multiple users/customers          ‣ Things to pay attention to:...
Multi-Tenancy evolution            Source: http://msdn.microsoft.com/en-us/library/aa479069.aspx                          ...
Multi-tenant Databases                                   42Wednesday, May 25, 2011
Multi-tenant Databases                                   43Wednesday, May 25, 2011
Putting it all together                             Cloud Computing In Practice                                           ...
A Hybrid IT Cloud                              45Wednesday, May 25, 2011
A Hybrid IT Cloud                              46Wednesday, May 25, 2011
Summary                          If you were sleeping, wake up now!                                                       ...
Summary                          48Wednesday, May 25, 2011
Summary          ‣ What is the Cloud?                                 48Wednesday, May 25, 2011
Summary          ‣ What is the Cloud?              • The cloud = IaaS + PaaS + SaaS                                       ...
Summary          ‣ What is the Cloud?              • The cloud = IaaS + PaaS + SaaS          ‣ If you have trouble remembe...
Summary          ‣ What is the Cloud?              • The cloud = IaaS + PaaS + SaaS          ‣ If you have trouble remembe...
Summary          ‣ With your next PHP application:              • See if you can run it on a Cloud Platform              •...
Food for Thought                          Let’s leave you with something to think about                                   ...
Food for Thought            Are you worried about this?                                                     Cloud         ...
Food for Thought            Then what about this?                                           Financial System              ...
Food for Thought            Then what about this?                                                Financial System         ...
http://www.egeniq.com                                                               info@egeniq.com                       ...
Credits            Pictures used (under Creative Commons Attribution licenses)            Cloud (slide 3):              ht...
Upcoming SlideShare
Loading in...5
×

PHP Development In The Cloud (php|tek edition)

4,592

Published on

This talk is the companion talk to the 'PHP Development in the Cloud' book I wrote with Vito Chin. It's an introduction into cloud computing for PHP developers. Delivered on may 25 at php|tek in Chicago.

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,592
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
202
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

PHP Development In The Cloud (php|tek edition)

  1. 1. http://www.egeniq.com info@egeniq.com @egeniq PHP Development In The Cloud php|tek edition Ivo Jansch May 2011Wednesday, May 25, 2011
  2. 2. What is the Cloud? 2Wednesday, May 25, 2011
  3. 3. What is the Cloud? 3Wednesday, May 25, 2011
  4. 4. Gartner’s Hype Cycle 4Wednesday, May 25, 2011
  5. 5. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  6. 6. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  7. 7. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  8. 8. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  9. 9. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  10. 10. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  11. 11. Gartner’s Hype Cycle 5Wednesday, May 25, 2011
  12. 12. Gartner’s Hype Cycle on Clouds 6Wednesday, May 25, 2011
  13. 13. 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/ 7Wednesday, May 25, 2011
  14. 14. NIST: Five Characteristics Things that are considered cloud: ‣ On-demand, self-service ‣ Broad network access ‣ Resource pooling ‣ Rapid elasticity ‣ Measured service 8Wednesday, May 25, 2011
  15. 15. NIST: Three Service Models Cloud applications are: ‣ Software as a Service ‣ Platform as a Service ‣ Infrastructure as a Service 9Wednesday, May 25, 2011
  16. 16. NIST: Four Deployment Models ‣ Private cloud ‣ Community cloud ‣ Public cloud ‣ Hybrid cloud 10Wednesday, May 25, 2011
  17. 17. Infrastructure as a Service 11Wednesday, May 25, 2011
  18. 18. Application Layers Standard layers in a typical application: Application System Software Storage Operating System Hardware Network 12Wednesday, May 25, 2011
  19. 19. Infrastructure as a Service Parts of the infrastructure offered as service to your app: Application System Software Storage Operating System Hardware Network 13Wednesday, May 25, 2011
  20. 20. Infrastructure as a Service ‣ Advantages: • Easily scalable • Move from capital expense to operational expense • Metered use • Don’t worry about hardware 14Wednesday, May 25, 2011
  21. 21. 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) 15Wednesday, May 25, 2011
  22. 22. The Rackspace Cloud in PHP 16Wednesday, May 25, 2011
  23. 23. The Rackspace Cloud in PHP 17Wednesday, May 25, 2011
  24. 24. IaaS Architecture Prepare your app to run on IaaS 18Wednesday, May 25, 2011
  25. 25. Horizontal Scalability ‣ If you run your app on multiple servers today, would it work? ‣ Typical problem areas: • Sessions • Files 19Wednesday, May 25, 2011
  26. 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/ 20Wednesday, May 25, 2011
  27. 27. Elasticity 21Wednesday, May 25, 2011
  28. 28. Elasticity 22Wednesday, May 25, 2011
  29. 29. Abstraction ‣ Abstract services where possible 23Wednesday, May 25, 2011
  30. 30. Abstraction 24Wednesday, May 25, 2011
  31. 31. Abstraction ‣ Con: 24Wednesday, May 25, 2011
  32. 32. Abstraction ‣ Con: • Common denominator functionality 24Wednesday, May 25, 2011
  33. 33. Abstraction ‣ Con: • Common denominator functionality • Adds some overhead 24Wednesday, May 25, 2011
  34. 34. Abstraction ‣ Con: • Common denominator functionality • Adds some overhead ‣ Pro: • Reduce vendor lock-in 24Wednesday, May 25, 2011
  35. 35. Abstraction ‣ Con: • Common denominator functionality • Adds some overhead ‣ Pro: • Reduce vendor lock-in • Save development time 24Wednesday, May 25, 2011
  36. 36. Abstraction ‣ Con: • Common denominator functionality • Adds some overhead ‣ Pro: • Reduce vendor lock-in • Save development time • No need to learn different APIs 24Wednesday, May 25, 2011
  37. 37. Abstraction ‣ Con: • Common denominator functionality • Adds some overhead ‣ Pro: • Reduce vendor lock-in • Save development time • No need to learn different APIs • Promotes competition between providers 24Wednesday, May 25, 2011
  38. 38. Abstraction ‣ Zend’s SimpleCloud • http://simplecloud.org • Good attempt at generic cloud abstraction 25Wednesday, May 25, 2011
  39. 39. Platform as a Service 26Wednesday, May 25, 2011
  40. 40. Platform as a Service Complete platform offered as a service: Application System Software Storage Operating System Hardware Network 27Wednesday, May 25, 2011
  41. 41. The Rackspace Cloud ‘Sites’ 28Wednesday, May 25, 2011
  42. 42. Rackspace’s TrueHybrid ‣ Platform selects the best operating system for your site ‣ Magically blends Windows and Linux, ASP.NET and PHP 29Wednesday, May 25, 2011
  43. 43. Other Platforms for PHP 30Wednesday, May 25, 2011
  44. 44. Other Platforms for PHP ‣ PHPFog • http://phpfog.com ‣ Orchestra.io 30Wednesday, May 25, 2011
  45. 45. Other Platforms for PHP ‣ PHPFog • http://phpfog.com ‣ Orchestra.io • http://orchestra.io ‣ Both are PaaS cloud platforms for PHP apps 30Wednesday, May 25, 2011
  46. 46. Other Platforms for PHP ‣ PHPFog • http://phpfog.com ‣ Orchestra.io • http://orchestra.io ‣ Both are PaaS cloud platforms for PHP apps • Relatively young, look very promising 30Wednesday, May 25, 2011
  47. 47. Other Platforms for PHP ‣ PHPFog • http://phpfog.com ‣ Orchestra.io • http://orchestra.io ‣ Both are PaaS cloud platforms for PHP apps • Relatively young, look very promising ‣ Google AppEngine 30Wednesday, May 25, 2011
  48. 48. Other Platforms for PHP ‣ PHPFog • http://phpfog.com ‣ Orchestra.io • http://orchestra.io ‣ Both are PaaS cloud platforms for PHP apps • Relatively young, look very promising ‣ Google AppEngine • http://code.google.com/appengine/ 30Wednesday, May 25, 2011
  49. 49. Other Platforms for PHP ‣ PHPFog • http://phpfog.com ‣ Orchestra.io • http://orchestra.io ‣ Both are PaaS cloud platforms for PHP apps • Relatively young, look very promising ‣ Google AppEngine • http://code.google.com/appengine/ • Python/Java only, but PHP support through Quercus 30Wednesday, May 25, 2011
  50. 50. Software as a Service 31Wednesday, May 25, 2011
  51. 51. Software as a Service Everything in the cloud: Application System Software Storage Operating System Hardware Network 32Wednesday, May 25, 2011
  52. 52. Software as a Service 33Wednesday, May 25, 2011
  53. 53. Software as a Service ‣ Complete applications or application components 33Wednesday, May 25, 2011
  54. 54. Software as a Service ‣ Complete applications or application components ‣ Popular phrase: “We are moving our ... to the cloud” 33Wednesday, May 25, 2011
  55. 55. Software as a Service ‣ Complete applications or application components ‣ Popular phrase: “We are moving our ... to the cloud” ‣ Examples: 33Wednesday, May 25, 2011
  56. 56. Software as a Service ‣ Complete applications or application components ‣ Popular phrase: “We are moving our ... to the cloud” ‣ Examples: • Gmail 33Wednesday, May 25, 2011
  57. 57. 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) 33Wednesday, May 25, 2011
  58. 58. 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 33Wednesday, May 25, 2011
  59. 59. 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 33Wednesday, May 25, 2011
  60. 60. 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) 33Wednesday, May 25, 2011
  61. 61. 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) 33Wednesday, May 25, 2011
  62. 62. 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) 34Wednesday, May 25, 2011
  63. 63. Example: Salesforce Source adapted from tutorial at http://www.mikesimonds.com 35Wednesday, May 25, 2011
  64. 64. Example: Google Apps 36Wednesday, May 25, 2011
  65. 65. General SaaS suggestions 37Wednesday, May 25, 2011
  66. 66. General SaaS suggestions 37Wednesday, May 25, 2011
  67. 67. General SaaS suggestions 37Wednesday, May 25, 2011
  68. 68. General SaaS suggestions ‣ Want to work with X from PHP? 37Wednesday, May 25, 2011
  69. 69. General SaaS suggestions ‣ Want to work with X from PHP? • Google ‘X php api’ or ‘X php tutorial’ 37Wednesday, May 25, 2011
  70. 70. 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 37Wednesday, May 25, 2011
  71. 71. 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 37Wednesday, May 25, 2011
  72. 72. 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 ‣ Interesting finding: Cloud apps are easier to work with than most desktop/noncloud apps. 37Wednesday, May 25, 2011
  73. 73. The ‘Warcraft Effect’ Clouds are living entities that change when you’re not looking 38Wednesday, May 25, 2011
  74. 74. Creating SaaS 39Wednesday, May 25, 2011
  75. 75. Creating SaaS 40Wednesday, May 25, 2011
  76. 76. Creating SaaS ‣ Building a single application for multiple users/customers 40Wednesday, May 25, 2011
  77. 77. Creating SaaS ‣ Building a single 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 40Wednesday, May 25, 2011
  78. 78. Multi-Tenancy evolution Source: http://msdn.microsoft.com/en-us/library/aa479069.aspx 41Wednesday, May 25, 2011
  79. 79. Multi-tenant Databases 42Wednesday, May 25, 2011
  80. 80. Multi-tenant Databases 43Wednesday, May 25, 2011
  81. 81. Putting it all together Cloud Computing In Practice 44Wednesday, May 25, 2011
  82. 82. A Hybrid IT Cloud 45Wednesday, May 25, 2011
  83. 83. A Hybrid IT Cloud 46Wednesday, May 25, 2011
  84. 84. Summary If you were sleeping, wake up now! 47Wednesday, May 25, 2011
  85. 85. Summary 48Wednesday, May 25, 2011
  86. 86. Summary ‣ What is the Cloud? 48Wednesday, May 25, 2011
  87. 87. Summary ‣ What is the Cloud? • The cloud = IaaS + PaaS + SaaS 48Wednesday, May 25, 2011
  88. 88. Summary ‣ What is the Cloud? • The cloud = IaaS + PaaS + SaaS ‣ If you have trouble remembering: 48Wednesday, May 25, 2011
  89. 89. Summary ‣ What is the Cloud? • The cloud = IaaS + PaaS + SaaS ‣ If you have trouble remembering: • Cloud = Platform, Infrastructure & Software as a Service 48Wednesday, May 25, 2011
  90. 90. 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 49Wednesday, May 25, 2011
  91. 91. Food for Thought Let’s leave you with something to think about 50Wednesday, May 25, 2011
  92. 92. Food for Thought Are you worried about this? Cloud Cloud Provider Where’s my data?! 51Wednesday, May 25, 2011
  93. 93. Food for Thought Then what about this? Financial System Bank Where’s my money?! 52Wednesday, May 25, 2011
  94. 94. 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! 52Wednesday, May 25, 2011
  95. 95. http://www.egeniq.com info@egeniq.com @egeniq Thank you! Questions? http://joind.in/3423 http://www.egeniq.com ivo@egeniq.com @ijanschWednesday, May 25, 2011
  96. 96. Credits Pictures used (under Creative Commons Attribution licenses) Cloud (slide 3): http://flickr.com/photos/kables/6324973/ Rubber Band Man: http://flickr.com/photos/thenovys/3791884189/ Clipart used (royalty free and public domain) http://www.clker.com/Wednesday, May 25, 2011
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×