Upload
vantuyen
View
222
Download
2
Embed Size (px)
Citation preview
Copyright © 2007, Zend Technologies Inc.
Enhancing the Operational Maturity of PHP Applications and Infrastructure
Siddhartha Agarwal
VP, Americas Field Operations
(408) 342 8887
| 16-Apr-08Increasing Maturity of PHP Applications | 2
• Maintaining quality through shrinking release cycles
• Managing and scaling business-critical Open Source applications to deliver on SLAs
• Increasing the rate of successful deployments from development into production environments
• Enabling developers to focus on developing functionality as opposed to solving production issues
• Securing applications to protect enterprise and customer data
• Defining standards for Open Source applications across the enterprise
Key Priorities articulated by CTOs, CIOs and VPsof Engineering
| 16-Apr-08Increasing Maturity of PHP Applications | 3
How do I enforce consistent versions of PHP?
How do I scale my dynamic PHP applications?
How do I “operationalize” my PHP applications?
How do I improve the developer productivity?
These priorities have raised the following questions for PHP applications…
| 16-Apr-08Increasing Maturity of PHP Applications | 4
Typical “Legacy” Process of Developing & Deploying PHP Applications
• Download PHP from PHP.net
• Download Editor and Apache Server
Build PHP Application
• Fast!
• Easy
Try toDeploy
• Problems!
• Headaches!
Now What?Developer
or for organizations looking to migrate to PHP …
For organizations that have already adopted PHP…
| 16-Apr-08Increasing Maturity of PHP Applications | 5
Existing Environment
• Provided a Java and a .NET based shared infrastructure to GE business units and 300,000 employees
• Started seeing a large number of PHP applications being developed and run within the business units
• Decided to deliver a similar shared infrastructure for PHP application deployment to enable standardization and reducing management costs
Their Goals
• Attain operational maturity on PHP applications within 3-6 months
• Deliver rapidly on SLAs and time-to-market requirements
• Provide security, high availability, standardization across all applications
Their Challenges
• Lack of in-house PHP expertise
• Lack of best practices and automation for managing applications with varying availability requirements
• Ability to enable segregation of duties between development and productions operations
GE Corporate: Hosted infrastructure/operations for PHP applications to all GE Business Units
| 16-Apr-08Increasing Maturity of PHP Applications | 6
DevelopmentQuality
AssuranceStaging Production
• Different versions of PHP
• Architecture/design does not consider
scalability requirements
• Deployment documentation is lacking
• Production operations lacks
expertise to manage PHP apps
• Low deployment success rate
• Developers frequently involved in
production issues
Chasm Between Development and Production Operations
Challenges with ensuring Predictability through the Applications Delivery Lifecycle
| 16-Apr-08Increasing Maturity of PHP Applications | 7
DevelopmentQuality
AssuranceStaging Production
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Feedback /
Improvement
Continuous
Monitoring
Automation and Best Practices help create Predictability in the Applications Delivery Lifecycle
Moving consistently across phases increases operational predictability & performance
| 16-Apr-08Increasing Maturity of PHP Applications | 8
Quality Assurance
Development
Mastering the Basics
Staging Production
• Best practices and coding standards
• Reusable code
• Architecture guidelines
• Consistent development environment
| 16-Apr-08Increasing Maturity of PHP Applications | 9
Development
Proactive Planning
Quality Assurance
Staging Production
• Repeatable, uniform testing
• Documentation standards
• Performance and scalability metrics
• Planning for Compliance
| 16-Apr-08Increasing Maturity of PHP Applications | 10
DevelopmentQuality
Assurance
Achieving Predictability and Stability
Staging Production
• Deployment and maintenance standards
• Agreed-upon processes
• Proactive management
• Centralized monitoring
• Established, proven communication mechanisms
| 16-Apr-08Increasing Maturity of PHP Applications | 11
DevelopmentQuality
Assurance
Continuous Monitoring & Improvement
Staging Production
• Delivering on SLAs
• Reducing MTTR via root cause analysis
• Increasing MTBF through Post incident reviews
• Configuration Mgmt through Maintenance & update profiles
| 16-Apr-08Increasing Maturity of PHP Applications | 12
Moving consistently across phases enhances Operational Maturity
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Continuous
Improvement
Value
Operational Maturity
Greater Maturity => Reduced Cost, Risk => Increased Uptime
| 16-Apr-08Increasing Maturity of PHP Applications | 13
Quality Assurance
Development
How is your organization doing on these phases?
• Best practices and coding standards
• Reusable code
• Architecture guidelines
• Consistent development environment
Staging Production
• Repeatable, uniform testing
• Documentation standards
• Performance and scalability metrics
• Planning for Compliance
• Deployment and maintenance standards
• Agreed-upon processes
• Proactive management
• Centralized monitoring
• Established, proven communication mechanisms
• Delivering on SLAs
• Reducing MTTR via root cause analysis
• Increasing MTBF through post incident reviews
• Configuration Mgmt through Maintenance & update profiles
Mastering
the Basics
Proactive
PlanningPredictability
& Stability
Continuous
Monitoring
| 16-Apr-08Increasing Maturity of PHP Applications | 14
Proactive
Planning
Achieving
Predictability
& Stability
Where is your Organization on the Operational Maturity Curve?
Value
Operational Maturity
Mastering
the Basics
Continuous
ImprovementCurrent Maturity
Maturity Required to
meet Business Goals
Copyright © 2007, Zend Technologies Inc.
Zend’s solutions leverage automation to mitigate the Operational Maturity Gap
| 16-Apr-08Increasing Maturity of PHP Applications | 16
Development
Zend Core: Ensuring Consistency Between Development and Production
Quality Assurance
Staging Production
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Continuous
Monitoring
• Consistent versions of PHP, extensions, database drivers
• Timely updates associated with security patches, bug fixes, new extensions/drivers
• Configuration Management across entire production infrastructure
| 16-Apr-08Increasing Maturity of PHP Applications | 17
Zend Framework: Enhancing Developer Productivity, Improving Code Quality
DevelopmentQuality
AssuranceStaging Production
• Higher deployment success rates
Components rigorously tested by Zend and PHP community
• Rapid development
• Pre-built components
• Iterative development cycles
• Developers focus on business specific functionality as opposed to infrastructure
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Continuous
Monitoring
| 16-Apr-08Increasing Maturity of PHP Applications | 18
Zend Studio: Providing Developers Insight into Production Issues
• Reusability
• Remote Debugging
in Production
• Development best
practices
Standards for
deployment
DevelopmentQuality
AssuranceStaging Production
Repeatable,
uniform
testing
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Continuous
Monitoring
• Root Cause Analysis
• Replicate Production
problems in developer’s
environment
| 16-Apr-08Increasing Maturity of PHP Applications | 19
Zend Application Server: Delivering Proactive Management and Scalability in Production
Manageability
• Proactive Monitoring
• Scalability
• Performance
DevelopmentQuality
AssuranceStaging Production
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Continuous
Monitoring
• Developing high performance code via Caching
Defining/measuring
performance &
scalability metrics
| 16-Apr-08Increasing Maturity of PHP Applications | 20
Zend’s Software Solutions
• How many PHP developers do you have? Developer Bundle
• Zend Core/Zend Framework
• Zend Studio
• Zend Platform (Development License)
• Zend Gold Support
• How many production/staging servers do you have? Production Server Bundle
• Zend Core/Zend Framework
• Zend Platform
• Zend Platinum Support
| 16-Apr-08Increasing Maturity of PHP Applications | 21
DevelopmentQuality
AssuranceStaging Production
• PHP I: Foundations
• PHP II: Higher Structures
• Studio with Platform
• Building PHP Apps with Zend Framework
• Building RIA with AJAX
• Zend Certification • Platform for Sys Admins
• Building Secure PHP Applications
• Architecture & Design Consulting
• Remote Installation & Admin Services
• Migration Consulting
• Audits
–Performance, security, architecture
• Gold Support • Platinum Support
Training
Consulting
Support
Zend Services Align with phases of the Application Delivery Lifecycle
Mastering
the Basics
Proactive
Planning
Achieving
Predictability
& Stability
Continuous
Monitoring