Zend Server - OSI Days


Published on

Introduction to Zend Server

Published in: Technology
  • Be the first to comment

Zend Server - OSI Days

  1. 1. Zend Server – OSI Days<br />Kevin Schroeder<br />Technology Evangelist<br />Zend Technologies<br />
  2. 2. About me<br />Kevin Schroeder<br />Technology Evangelist for Zend<br />Programmer<br />Sys Admin<br />Author<br />IBM i Programmer’s Guide to PHP<br />You want to do WHAT with PHP? <br />Coming up<br />Race Ferraris on the weekend<br />My Honda has a dismal win record<br />
  3. 3. I blog at eschrade.com<br />Follow us!<br />Zend Technologies<br />http://twitter.com/zend<br />http://twitter.com/kpschrade (me!)<br />
  4. 4. A quick note on Zendcon… BE THERE!!<br /><ul><li>Learn PHP best practices
  5. 5. Discover new advances
  6. 6. Gain new insights
  7. 7. Deploy and scale large PHP applications
  8. 8. Explore new technologies like NoSQL and Cloud Computing
  9. 9. Learn how to effectively leverage Zend Framework and Zend Framework 2.0</li></li></ul><li>Also, we’re doing a drawing for a copy of Zend Studio!<br />I will be asking a question at the end, and the first person to get it will win a free copy of Zend Studio<br />
  10. 10. What does Zend do<br />Zend Framework<br />Zend Studio (8.0 in public beta 1)<br />Zend Server<br />Monitoring,<br />Code tracing (freaking cool!!)<br />Job queuing<br />HA Session Clustering<br />Zend Server Cluster Manager<br />Lots and lots of training<br />PHP, Zend Framework certifications<br />
  11. 11. Zend Solutions: Increasing PHP Lifecycle Maturity<br />Zend Platform Enterprise Suite<br />Zend Server<br />Platinum Support<br />Gold Support<br />Develop<br />Test<br />Deploy<br />Maintain<br />People<br />Process<br />Products<br />Zend Developer Solution<br />Zend Production Server Solution<br />Zend Studio<br />Zend Platform Enterprise Suite<br />(Dev License)<br />Zend Framework<br />Community<br />Zend Server <br />(Dev License)<br />Zend Framework<br />Enterprise<br />Support<br />Standard<br />Support<br />Zend Guard<br />
  12. 12. Zend Framework<br />Zend Server<br />PHP<br />Test<br />Application<br />Performance<br />Reliability &<br />Management<br />Scale-Out<br />Business-grade<br />PHP<br />Acceleration<br />Monitoring<br />Clustering<br />Hot Fixes<br />Optimization<br />Root-Cause<br />Job Queue<br />Support<br />Profile<br />Caching<br />Downloads<br />Java Bridge<br />Configuration<br />Zend Studio (Eclipse-based)<br />Debug<br />Collaborate<br />Linux<br />(rpm/web repositories)<br />IBM i<br />(PTF)<br />Windows<br />(MSI)<br />8<br />Zend Server<br />
  13. 13. What is Zend Server?<br />What it is not<br />A fork of PHP<br />A competitor of PHP<br />What it is/has<br />Full PHP compatibility (it’s built from the same source code)<br />SLA-based support<br />Many additional features<br />
  14. 14. Zend Server Editions<br />Two versions<br />Zend Server CE – FREE<br />Zend Server – Available with several additional features<br />| 10<br />Name of this section<br />
  15. 15. Supported Environments<br />Red Hat/CentOS<br />Ubuntu/Debian<br />SLES/Novell (new)<br />Windows<br />IBM i<br />
  16. 16. How does Zend Server fit?<br />
  17. 17. Where do the features fit?<br />
  18. 18. The primary reason to use Zend Server is insight<br />What went wrong?<br />Who did it happen to?<br />But there are many useful features in Server 5<br />
  19. 19. Monitoring<br />
  20. 20. Why do we need diagnostic tools?<br />
  21. 21. Let’s slow that down a bit<br />
  22. 22. Fixing problems in a dev environment<br />
  23. 23. Fixing problems in production environments<br />Logging<br />Monitoring<br />
  24. 24. Code Tracing<br />
  25. 25. Code Tracing<br />Reproducing an issue is not always possible...<br /><ul><li>Dependency on specific SESSION state
  26. 26. Dependency on specific database state
  27. 27. “Replaying” the request is risky or impossible</li></ul>Zend Code Tracing can capture the entire execution flow<br /><ul><li>...and, it is efficient enough to be used in most production environments!</li></ul>“Hindsight is always twenty-twenty.”<br />- Billy Wilder<br />
  28. 28.
  29. 29.
  30. 30. Job Queue<br />
  31. 31. Job Queue – A Common Execution Flow<br />
  32. 32. Why use the Job Queue<br />Very easy to set up<br />Very easy to use API<br />Very easy to scale<br />Job execution can be easily deployed as part of your application<br />
  33. 33. Not good for queuing<br />Typical anatomy of a PHP Application<br />PHP: Past and Present<br />Presentation<br />Application Control<br />Database Access<br />Business Logic<br />Presentation<br />Application Control<br />Business Logic<br />Presentation<br />| 27<br />
  34. 34. Anatomy of a Modern PHP Application<br />PHP: Past and Present<br />Presentation<br />Something.phtml<br />Something.phtml<br />Something.phtml<br />Something.phtml<br />Something.phtml<br />Something.phtml<br />Something.phtml<br />Something.phtml<br />Application Control<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Business Logic<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Database Access<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />Something.php<br />| 28<br />Much better for queuing<br />
  35. 35. A useful practice:<br />Create a generic handler<br />Pass objects to be executed to that handler<br />
  36. 36. Session Clustering<br />
  37. 37. Architectural Overview<br />31<br />the Simple Cloud API Initiative<br />
  38. 38. Failure Handling<br />32<br />the Simple Cloud API Initiative<br />
  39. 39. Scalability & Cloud Readiness<br />Session Clustering provides a Graceful Shutdown mechanism<br />When a machine is shut down, it will transfer all it’s sessions to a different server in the cluster<br />All cluster members will know to use the replacement server while the original owner is down<br />This process rarely takes more than 30 seconds<br />Graceful Shutdown allows shutting down machines permanently or for maintenance without losing sessions<br />Allows scaling down in addition to scaling up – Cloud ready!<br />33<br />the Simple Cloud API Initiative<br />
  40. 40. Zend Server Cluster Manager<br />
  41. 41. What is Zend Server Cluster Manager?<br />A central management point for a cluster of Zend Servers<br />Central Configuration Management<br />Central Monitoring<br />Session Clustering<br />35<br />the Simple Cloud API Initiative<br />
  42. 42. Wrapup<br />
  43. 43. Wrapup<br />
  44. 44. Question<br />For a free copy of Zend Studio…<br />Is it generally a good practice to use Zend Server Code Tracing in a production environment?<br />
  45. 45. Follow us!<br />Zend Technologies<br />http://twitter.com/zend<br />http://twitter.com/kpschrade (me!)<br />
  46. 46. Get this information and all the examples at eschrade.com…<br />
  47. 47. Remember… BE THERE!!<br /><ul><li>Learn PHP best practices
  48. 48. Discover new advances
  49. 49. Gain new insights
  50. 50. Deploy and scale large PHP applications
  51. 51. Explore new technologies like NoSQL and Cloud Computing
  52. 52. Learn how to effectively leverage Zend Framework and Zend Framework 2.0</li>