microsoft techdays 2011 - php on windows

Post on 28-Jan-2015

124 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Zend Enterprise PHP on Windows

CTO, Zend/PHP Evangelist

Rynet Group, Zend Authorized Solution & Training Partner

South East Asian Region

Rama Yurindra

www.enterprisephpcenter.com.

Rynet GroupZend Technologies Authorized Solution & Training Partner ASEAN (ID, MY, SG)

http://www.zend.com/en/services/training/training-partners/http://www.zend.com/en/company/partners/solution-partners

Established in 1999, in Indonesia

2006 Zend Certified Reseller Partner, ID

2007, Zend Certified Reseller Partner, MY

2008, Zend Certified Reseller Partner, SG

2009, Zend Authorized Solution PartnerSouth East Asian Region

2009, listed as one of the 12 companies appointed to be Zend Auhtorized Training Partner covering South East Asian Region

2010, Patnership with New Horizons SG

2010, signed PHP Center of Excellence with MIMOS Berhad in Malaysia

2010, launched Enteprise PHP Centerhttp://www.enterprisephpcenter.com

www.enterprisephpcenter.com.

About me• Rama Yurindra

Zend/PHP Evangelist

Co Founder & CTO of RYNET Group

Zend Authorized Solution Partner ASEAN

Zend Authorized Training Center ASEAN

Co Founder of PHP Indonesia

Board of Singapore PHP User Group

w/ Zend & MIMOS Berhad established PHP Center of Excellence, Malaysia

Founder & Chief Editor

• Enterprise PHP Center

www.enterprisephpcenter.com

www.enterprisephpcenter.com.

Agenda – Microsoft TechDays: PHP on Windows

• PHP Overview & Case Studies

• Microsoft & Zend Strategic Collaboration to bring PHP on Windows

• Demo :Build a High-Performance PHP Stack with Windows IIS and Zend Server

• Next Step to Monetize

• PHP on Windows Training Programs

PHP Overview

# 5

RYNET Confidential

The Growth of PHP

1995 1997 1999 2000 2002 2003 2004 2005 2006 2007

20M

15M

10M

5MRasmusLerdorf IntroducesPHP/FI

PHP 4 Released

• 1M Internet domains

• Zend Engine• Zend Founded

Yahoo! Standardizeson PHP

PHP 5.0(XML,SOAP,OOP)Zend Studio

IBM, Oracle Endorse PHP

Zeev Suraski &

Andi Gutmanslead the development of PHP 3

Zend Framework & Eclipse projectMicrosoft relationship formed

PHPInternet Domains

25M

ZF and PDT released, PHP 4 EOLannounced

PHP Proliferation

RYNET Confidential

Who Uses PHP – New Case Studies

• General Electric (GE Holding)

• NYSE Euronext

• BNP Paribas

• FIAT Group

• Whitehouse.gov

• France Telecom (Orange)

• Deutsche Telecom

• Cisco WebEx

• And many more

# 7

www.enterprisephpcenter.com

Microsoft & Zend Strategic Partnership

Making PHP 1st class citizen on Windows Platform

# 8

RYNET Confidential

PHP on Microsoft.com web.ms/php# 9

http://www.microsoft.com/web/platform/phponwindows.aspx

RYNET Confidential

# 10

• Windows dominates as PHP development platform Over 75% of developers use Windows

• Few production deployments on Windows platforms

• Why? PHP did not run as well on Windows Limited connectivity to key Windows services (e.g. SQL

Server)

PHP on Windows - Background

RYNET Confidential

# 11

Zend & Microsoft Partnership

Goal:• To enhance the performance and reliability of

running PHP applications on Windows Server, and contributing these enhancements to the Open Source community.

• Richer Functionality on the Windows Platform

• Better Integration with Windows Applications and Services

“Zend is a clear leader in the PHP community, and we are excited … to provide developers using PHP with the best possible experience within a Microsoft environment.”

Bill Hilf, General Manager of Technical Platform Strategy at Microsoft

RYNET Confidential

# 12

Strategic Collaboration

• Multi-year collaboration announced 10/31/2006 Significant engineering investments on both sides

• The result: PHP codebase improvements on Windows Platform Improvements in FastCGI for IIS (included in Windows Server 2008) Stable, high-performance PHP production environment for

Windows

Improvements in IIS 7 support for PHP SQL Server Native driver to PHP

Windows Azure component in Zend Framework

Collaborating on the open source SimpleCloud project,

RYNET Confidential

Zend on Windows Server Rebate Program

# 13

https://microsoft.young-america.com/49710561/RebateForm.aspx

RYNET Confidential

Why Run Zend Server on Windows Server?

• Better performance PHP opcode acceleration, page and data caching, and job queue features, to deliver top performance for PHP applications on Windows Server. Native MSI support

• Easy to deploy and use a complete PHP stack, including the PHP runtime, commonly-used extensions, Zend Framework, and Microsoft SQL Server driver for PHP, all available as a standard MSI installer. Native IIS support (IIS 5.1, IIS 6, IIS7)

• Easy to monitor application monitoring and code tracing to enable early problem detection and rapid resolution. IIS automated failed request tracing, the joint stack enables developers to quickly troubleshoot issues in testing and production and to improve application availability. Bundles MS FastCGI for Server 2003 and XP

• Easy to manage –greatly simplifies configuration and management of the PHP stack from a single point of visibility and control.

• Fully-supported – Zend Server customers receive the latest updates and hot fixes backed by 24x7x365 support. Zend Training and Zend Certification programs are also available.

Demo Build a High-Performance PHP Stack with Windows IIS and Zend Server

# 15

16

What is Zend Server?...and why should I care?

17

...Well, Just ask your friend in Marketing!

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

18

Let's try to make sense out of that..

Zend Server is:▶ A complete, well tested PHP runtime environment▶ Supported and updated by Zend▶ Comes with a set of extra features that:

Improve the performance and reliability of PHP applications Make it easier to manage a consistent PHP environment

Comes in two flavors:▶ Zend Server▶ Zend Server Community Edition

19

Manageability Features...making PHP even simpler

20

Installation

Zend Server uses OS-native installers▶ Linux: Deb and RPM repositories▶ Windows: MSI▶ Mac OS X*: PKG installer

This is good because:▶ Native means well-known, convenient, proven, reliable▶ Upgrading, updating, modifying and removing is easy▶ Automating, scripting and bundling is also easy

* Mac OS X is Community Edition only

21

Zend Server: Top Choice for Windows Environments• Collaborating with Microsoft since 2006

• Fastest and best integrated PHP runtime for Windows

• Native MSI support

• MSI-based hot fixes

• Native IIS support (IIS 5.1, IIS 6, IIS7)

• SQL Server for PHP driver

• Bundles MS FastCGI for Server 2003 and XP

• With Microsoft’s support & best practices

22

The Administration Interface

Zend Server's GUI allows you to conveniently...▶ Control the different Zend Server components▶ Control your PHP settings

PHP Extensions PHP Directives

▶ Monitor the current system status Extension status PHP status Logs Available updates & security fixes

23

Performance Features

24

Zend Server's approach to performance

A Web application's performance is affected by many different factors...

...This is why taking a single measure will only give partial results

25

Zend Server's approach to performanceReally improving performance requires combining different measures:

▶ Configuration Optimization▶ Opcode Optimization and Caching▶ Data Caching and Page Caching▶ Off-line or parallel execution

Not all performance optimizations are equal▶ Some are almost free and should be done in almost all cases▶ Some are expensive and should not be done without insight

Zend Server provides the measures, and the insight!

26

Optimizer+

Eliminates the stuff you don't really need:▶ Code optimizer

Optimizes certain code fragments to improve execution speed

▶ Opcode cache Caches the optimized, compiled bytecode in RAM Reduces or eliminates

compile time Reduces or eliminates

disk access

Magento Drupal SugarCRM CE05

101520253035404550

2.24

13.96 12.69

5.3

45.5541.73

Bare PHP Optimizer+

27

Data Caching

Provides a set of API functions for caching of data items

▶ DB query results, web service calls, complex or hard-to-get data

▶ Output elements

▶ Allows skipping slow PHP code chunks▶ Shared memory and Disk storage backends▶ Data could be grouped using namespaces▶ APC user cache compatibility layer▶ Zend Framework Zend_Cache_Backend adapters

28

Page CachingDon't execute a single line of PHP if you don't have to...

▶ Caches entire HTTP response ▶ Super fast (seriously!)▶ Configured from UI, no code changes required▶ Live / cached decision is based on request or session parameters▶ Variants can be created

based on request or session parameters

No Cache Session Rule Other Rule0

100

200

300

400

500

600

700

21.94

201.17

589.26

29

Page Caching

30

Reliability FeaturesMake sure it keeps running!

31

Reliability?

Getting your application out there is one thing, keeping it working properly is a different story!

Zend Server helps you by:▶ Making sure your software is

up-to-date, including critical fixes▶ Monitoring your apps for errors,

slowdowns and other troubles▶ Capturing data that can be used

when resolving any detected issues

32

Application Level MonitoringZend Server Monitor will watch your application for:

▶ PHP Errors (including warnings, notices, uncaught exceptions...)▶ Failing functions (user-defined or internal)▶ Failing DB queries ▶ Slow functions (user-defined or internal) or DB queries▶ Slow request executions▶ High memory consumption▶ Errors reported by Zend Server

components

When an issue is detected, Zend Server will report an event

33

Root Cause AnalysisRecurring events are aggregated and placed on a timeline

▶ So you can know if a problem repeats, and if so when

Each event report contains context information that can assist in debugging the event:

▶ URL, file, line, error message, repeat count etc.▶ Request information (GET, POST, COOKIE etc.)▶ Server information ▶ Session Information▶ Backtrace (if relevant)

For many errors, this information is crucial for debugging

34

Integration with Zend StudioZend Server integrates with Zend Studio and allows you to “replay” an event

▶ In a debugging session▶ In a profiling session

▶ This can be done with one button click from the GUI▶ …or, by exporting the event data and passing it to a developer,

from the developer's IDE

▶ You can also “replay” on an alternate testing server

In many cases this eliminates time spent on reproduction

35

Code TracingReproducing an issue is not always possible...

▶ Dependency on specific SESSION state▶ Dependency on specific database state▶ “Replaying” the request is risky or impossible

Zend Code Tracing can capture the entire execution flow

▶ ...and, it is efficient enough to be used in most production environments!

“Hindsight is always twenty-twenty.”- Billy

Wilder

36

Code TracingCan be used in several ways:

▶ Automatic tracing in case of a Zend Monitor event For example a PHP error, a slow execution or high memory usage

▶ Manually through the GUI or from a browser▶ Through API

Can capture the following information:▶ Execution tree including function calls and included files▶ Function agrument and return parameters▶ Output and header generation▶ Location of errors, exceptions and Zend Monitor events▶ For each node, execution time and memory usage is

measured

37

Code Tracing

38

Updates & Hot Fixes from ZendZend Server is regularly updated with...

▶ PHP releases▶ Zend Framework releases▶ Important patches to PHP and supporting components

Bugs fixed by the PHP team but not yet released Patches committed by Zend to the PHP source tree, but not yet

released

Zend also issues hot-fixes when needed▶ All relevant security reports are analyzed by Zend▶ This includes PHP, extensions, libraries, and other

components▶ Zend is committed to releasing hot-fixes for critical issues

39

Demo : Installation Zend Server on Windows

RYNET Confidential

Download Zend Server from Zend.Com# 40

RYNET Confidential

Fastest and best integrated PHP runtime for Windows Out of the box seamless installation of PHP on Windows

# 41

RYNET Confidential

Zend Server will also install the MS-SQL Server Native Client

# 42

RYNET Confidential

Configure Zend Server to integrate with your existing IIS# 43

RYNET Confidential

Standard & native MSI installer# 44

RYNET Confidential

Dashboard provides a quick overview of recent PHP events, such as errors and warnings, as well as information on the current status of the various Zend add-on components

# 45

RYNET Confidential

Application Monitoring

• Watches your application for: PHP Errors (including

warnings, notices, uncaught exceptions...)

Failing functions Failing DB queries Slow functions or DB queries Slow request executions High memory consumption

• When an issue is detected, an event is reported

RYNET Confidential

Diagnostics: Code Tracing

• Reproducing problems is often difficult and time-consuming

• Zend Server captures the full execution flow in testing or production

• Allows the developer to “step back in time” and quickly determine root cause

• Integrated with Zend Studio

RYNET Confidential

High Availability: Session Clustering

• When one server fails, user’s session is maintained while failing over to another server

RYNET Confidential

Centralized Management

• Ensures consistent configuration Alert on configuration

discrepancies to prevent application issues

• Centralized monitoring

• Cloud “friendly” Quickly add servers Easily manage any number of

servers

RYNET Confidential

Updates & Hot Fixes from Zend

• Zend Server is regularly updated with: PHP releases Zend Framework releases Important patches to PHP and supporting components Bugs fixed by the PHP team but not yet released Patches committed by Zend to the PHP source tree, but

not yet released

• Zend also issues hot-fixes when needed All relevant security reports are analyzed by Zend This includes PHP, extensions, libraries, and other

components Zend is committed to releasing hot-fixes for critical

issues

© All rights reserved. Zend Technologies, Inc.51

Zend - the Cloud and Virtual DataCenters

Simple Cloud API

Cloud

Develop

RADDebuggingTesting

Manage

MonitoringDiagnosticsPerformanceSecurity

Simple Cloud APIAmazon EC2

Next Step to Monetize

# 52

RYNET Confidential

Path to Enterprise PHP# 53

www.enterprisephpcenter.com.

How’s Zend Holistic Approach to Enterprise PHP

RYNET Confidential

Next Step

• Download & “Play” with PHP on Zend Server

• Start a Pilot Project, convince your boss/customers

• Get yourself Trained by Professionals

• Get professional Support from Zend & Microsoft

• Start to generate some Online revenues with PHP on Windows

• Pass the Zend/PHP Certification for Global Recognition

• Actively involve in PHP Community

# 55

Thank you!

For More Information Please Visit :

• www.zend.com

•www.microsoft.com/web/platform/phponwindows.aspx

• www.enterprisephpcenter.com

•Email: rama@rynet.com.sg Twitter: @ramayurindra @ephpc

top related