PHP and the Cloud

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    23 Favorites

    PHP and the Cloud - Presentation Transcript

    1. PHP and the Cloud http://joind.in/915 Ivo Jansch Zendcon 2009, October 21st 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
    5. Gartner’s Hype Cycle 5 donderdag 22 oktober 2009
    6. Gartner’s Hype Cycle 6 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 Standard layers in a typical application: Application System Software Storage Operating System Hardware Network 13 donderdag 22 oktober 2009
    14. Infrastructure as a Service Parts of the infrastructure offered as service to your app: Application System Software Storage Operating System Hardware Network 14 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
    22. Example: Terremark’s Infinicloud 22 donderdag 22 oktober 2009
    23. Terremark’s InfiniCloud 23 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
    28. Elasticity 28 donderdag 22 oktober 2009
    29. Elasticity 29 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: Application System Software Storage Operating System Hardware Network 36 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: Application System Software Storage Operating System Hardware Network 44 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 Source adapted from tutorial at http://www.mikesimonds.com 48 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
    50. Example: Google Apps 50 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
    53. Creating SaaS 53 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
    55. Multi-Tenancy evolution Source: http://msdn.microsoft.com/en-us/library/aa479069.aspx 55 donderdag 22 oktober 2009
    56. Multi-tenant Databases 56 donderdag 22 oktober 2009
    57. Multi-tenant Databases 57 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? Cloud Cloud Provider Where’s my data?! 66 donderdag 22 oktober 2009
    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 donderdag 22 oktober 2009
    68. Questions ? 68 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

    + Ivo JanschIvo Jansch, 1 month ago

    custom

    1880 views, 23 favs, 8 embeds more stats

    Slides of the talk I did at Zendcon 09. It tells PH more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 1880
      • 1710 on SlideShare
      • 170 from embeds
    • Comments 0
    • Favorites 23
    • Downloads 0
    Most viewed embeds
    • 91 views on http://www.jansch.nl
    • 62 views on http://www.planet-php.net
    • 9 views on http://www.planet-php.org
    • 3 views on http://www.berejeb.com
    • 2 views on http://xss.yandex.net

    more

    All embeds
    • 91 views on http://www.jansch.nl
    • 62 views on http://www.planet-php.net
    • 9 views on http://www.planet-php.org
    • 3 views on http://www.berejeb.com
    • 2 views on http://xss.yandex.net
    • 1 views on http://www.plaxo.com
    • 1 views on http://planet-php.org
    • 1 views on http://phpeye.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories