Best Practices for
                                               PHP
                                               Application Delivery


Ana Maria Valarezo
Regional Sales Manager Latin America & Spain
ana.m@zend.com

                                                                      1
Faster application delivery poses challenges

    50% of dev and ops professionals have missed release dates
    due to lack of coordination


   58% of organizations are unhappy with application response
   times

    30% + of development time is spent fixing production
    problems rather than building new functionality


   56% of dev and ops professionals have had apps work in
   testing but fail in production

                                                                 2
Main Challenges

     How do I improve devops collaboration to support
 ?   faster release cycles?

     How do I meet end-user expectations for
 ?   application response times?

     How do I maintain quality with shorter
 ?   development cycles?

     How do I ensure I’m meeting app SLA
 ?   commitments to the business?

                                                    3
Inconsistent Environment

                             Manual Deployment Process

                                  Lack of Developers Visibility




How do I improve devops collaboration to support faster
release cycles?

                                                              4
How do I improve devops collaboration
?   to support faster release cycles?

Zend’s Solution:
Simplify Devops Coordination


 • Automate the deployment process
 • Visibility into issues that eliminates need for reproduction
 • Consistent and support stack




                                                                  5
Complex to optimize performance across all stages

                            Difficult to understand the problem

                                        Hard to scale quickly




How do I meet end-user expectations for application
response times?
                                                                  6
How do I meet end-user expectations for
 ?   application response times?

Zend’s Solution for Optimizing
PHP App Performance


• Application performance monitoring & management
• Multi-level optimization across the HTTP request/response cycle
• Infrastructure that flexes to handle variable load




                                                                    7
Developers waste time in other tasks
                                     Different level of skills
                                     Reinvent the wheel




How do I maintain quality with shorter development
cycles?

                                                                 8
How do I shorten my development cycle
?   while maintaining quality?


Zend’s Solution for Development
Best Practices


• Minimize errors through code re-use and best practices
• A full suite of tools and training for PHP developers
• Reduce developer effort spent on debugging &
    deployment




                                                           9
Rapid Application Iteration
 How do you identify issues before
 they affect end-users




How do I ensure I’m meeting app SLA commitments to
the business?

                                                     10
How do I ensure I’m meeting app SLA
?   commitments to the business?


Zend’s Solution for Operational Agility



    • Manage change across multiple servers as one
    • Proactively identify and handle troubling
      performance and application behavior trends
    • Zend helps ensure security and compliance of
      your PHP apps


                                                     11
Zend Server

  Zend Server is a complete, enterprise-ready Web Application
   Platform for running and managing PHP applications that
   require a high level of reliability, performance and security

Configuration &            Monitoring &           Performance &
                           Root Cause                                   Enterprise
 Deployment                                         Scalability        Integration
                            Analysis
                           Metrics & Trends      Multi-level Caching    Deployment
 App Deployment             Dashboards
    & Rollback                                                          Automation
                                                     Job Queue             APIs
Rolling Deployment           Production
     & Upgrades             Code Tracing           Cloud Elasticity       Monitoring
                             User role                                 Integration APIs
 Config Change              separation           Multi-Server Config
Detection/Backup                                   Management           LDAP-based
 Config Audit Trail        App-specific                                Access Control
                          Monitoring Rules       Session Clustering
                                                                       Java Connector
             Development Tools & PHP Runtime

                      Support & Security Fixes
                                                                                          12
Zend Server         Eco-System
                    App Frameworks




                                        Source Control
Frameworks
                    DEVELOPMENT



                                          Continuous Integration




 Monitoring                              Automatio
                                             n



                     OPERATIONS




                                                                   13
                     Cloud Platforms
Demo


          Try Zend Server for 30 days!

http://www.zend.com/en/products/server/downloads


                                                   14

Best Practices in PHP Application Delivery

  • 1.
    Best Practices for PHP Application Delivery Ana Maria Valarezo Regional Sales Manager Latin America & Spain ana.m@zend.com 1
  • 2.
    Faster application deliveryposes challenges 50% of dev and ops professionals have missed release dates due to lack of coordination 58% of organizations are unhappy with application response times 30% + of development time is spent fixing production problems rather than building new functionality 56% of dev and ops professionals have had apps work in testing but fail in production 2
  • 3.
    Main Challenges How do I improve devops collaboration to support ? faster release cycles? How do I meet end-user expectations for ? application response times? How do I maintain quality with shorter ? development cycles? How do I ensure I’m meeting app SLA ? commitments to the business? 3
  • 4.
    Inconsistent Environment Manual Deployment Process Lack of Developers Visibility How do I improve devops collaboration to support faster release cycles? 4
  • 5.
    How do Iimprove devops collaboration ? to support faster release cycles? Zend’s Solution: Simplify Devops Coordination • Automate the deployment process • Visibility into issues that eliminates need for reproduction • Consistent and support stack 5
  • 6.
    Complex to optimizeperformance across all stages Difficult to understand the problem Hard to scale quickly How do I meet end-user expectations for application response times? 6
  • 7.
    How do Imeet end-user expectations for ? application response times? Zend’s Solution for Optimizing PHP App Performance • Application performance monitoring & management • Multi-level optimization across the HTTP request/response cycle • Infrastructure that flexes to handle variable load 7
  • 8.
    Developers waste timein other tasks Different level of skills Reinvent the wheel How do I maintain quality with shorter development cycles? 8
  • 9.
    How do Ishorten my development cycle ? while maintaining quality? Zend’s Solution for Development Best Practices • Minimize errors through code re-use and best practices • A full suite of tools and training for PHP developers • Reduce developer effort spent on debugging & deployment 9
  • 10.
    Rapid Application Iteration How do you identify issues before they affect end-users How do I ensure I’m meeting app SLA commitments to the business? 10
  • 11.
    How do Iensure I’m meeting app SLA ? commitments to the business? Zend’s Solution for Operational Agility • Manage change across multiple servers as one • Proactively identify and handle troubling performance and application behavior trends • Zend helps ensure security and compliance of your PHP apps 11
  • 12.
    Zend Server Zend Server is a complete, enterprise-ready Web Application Platform for running and managing PHP applications that require a high level of reliability, performance and security Configuration & Monitoring & Performance & Root Cause Enterprise Deployment Scalability Integration Analysis Metrics & Trends Multi-level Caching Deployment App Deployment Dashboards & Rollback Automation Job Queue APIs Rolling Deployment Production & Upgrades Code Tracing Cloud Elasticity Monitoring User role Integration APIs Config Change separation Multi-Server Config Detection/Backup Management LDAP-based Config Audit Trail App-specific Access Control Monitoring Rules Session Clustering Java Connector Development Tools & PHP Runtime Support & Security Fixes 12
  • 13.
    Zend Server Eco-System App Frameworks Source Control Frameworks DEVELOPMENT Continuous Integration Monitoring Automatio n OPERATIONS 13 Cloud Platforms
  • 14.
    Demo Try Zend Server for 30 days! http://www.zend.com/en/products/server/downloads 14

Editor's Notes

  • #7 Lets talk about the second major challenge we often hear – how to meet end user expectations for application response times (performance) .Here are some of the sources of this challenge:Difficult to understand what slows apps down. Once your applications have been pushed out to production, you’ll hear about it if your end-users are unhappy. When apps gain traction and then fail to perform as expected, it can be difficult to understand the source of scalability issues. This is particularly true in siloed environments where dev and ops teams lack a common view of app performance. Working together, they need to understand: what it takes to scale an app quickly to meet demand spikes, how performance can be optimized across all stages of the request/response cycle, and if it occurs, what is slowing an application down after it moves into production. So this comes down to a few questions: 1) how does your organization become aware of performance problems before they impact the users? 2) how do you identify the cause of the performance issues rapidly? 3) how do design your infrastructure to scale to handle varying load based on usage cycles?Complex to optimize performance across all stages of the request/response cycle . The great thing about a PHP request is that there are lots of ways to optimize its performance at various levels – more places to potentially squeeze a bit more speed out of your code. And of course you need the ability to monitor and see exactly how applications are performing, ideally applications that have been built and tested from the ground up with scalability in mind.Hard to scale apps quickly to meet demand spikes To deliver the best possible service to customers during peak traffic, DevOps efforts must be aligned with this goal [and supported by a common application platform that delivers on-demand scalability and fault tolerance]. Its helpful to think about infrastructure and application requirements for auto-scaling both on premise and in the cloud.
  • #11 Lets move to another challenge we frequently hear and a true challenge – how to maintain quality in the face of these frequent release cyclesThe best practicesZend has seen for maintaining quality include:Prevent/avoid reinventing the wheel - the key here is to adopt frameworks and best practices. This is a situation where standardization helps.Ensuring developers have best in class skills/methodologies. You want your devs to have the best of tools and and easy processes.Avoid the scenario where developers spend too much time on non coding tasks. Unfortunately this is too often the case that devs spend too much time doing documentation for release and up to 30% of their time can be spent on troubleshooting apps even once they are in production.