PHP on Windows
Upcoming SlideShare
Loading in...5
×
 

PHP on Windows

on

  • 4,160 views

PHP on Windows introduction

PHP on Windows introduction

Statistics

Views

Total Views
4,160
Views on SlideShare
3,489
Embed Views
671

Actions

Likes
0
Downloads
17
Comments
0

12 Embeds 671

http://blog.maartenballiauw.be 594
http://cartrackr.codeplex.com 25
http://roygu.com 20
http://www.slideshare.net 10
http://www.blog.maartenballiauw.be 8
http://juan-tn.blogspot.com 4
http://translate.googleusercontent.com 3
http://www.jumpincamp.com 3
http://microsoft.realdolmenblogs.com 1
http://www.juan-tn.blogspot.com 1
http://david007-eo.blogspot.com 1
http://web.archive.org 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

PHP on Windows PHP on Windows Presentation Transcript

  • PHP on Windows
    Maarten Balliauw – RealDolmenE-mail: maarten.balliauw@realdolmen.comBlog: http://blog.maartenballiauw.beTwitter: @maartenballiauw
  • Who am I?
    Maarten Balliauw
    Antwerp, Belgium
    www.realdolmen.com
    Focus on web
    ASP.NET, ASP.NET MVC, PHP, Azure, VSTS, …
    MVP ASP.NET
    Interested in interoperability
    PHPExcel, PHPLinq, Windows Azure SDK for PHP, ...
    http://blog.maartenballiauw.be
    http://twitter.com/maartenballiauw
  • Agenda
    Why PHP matters…
    An overview of initiatives
    PHP core development
    FastCGI
    WinCache extension
    SQL Server driver for PHP
    Microsoft Web Platform Installer
    SDK’s
    Tooling
    SEO Optimization Tool
    Resources
    Q&A
  • Why PHP matters…
    Web applications
    Wordpress
    Drupal
    Joomla
    phpBB
    MediaWiki
    SugarCRM
    Gallery2
    Commercial entities
    Yahoo!
    Flickr
    Digg
    Facebook
    YouTube
    Wikipedia
     Hard to ignore!
  • PHP on Windows
    If PHP matters, better make it a first-class citizen…
  • Microsoft and the PHP Community
    Before
    Now
  • http://windows.php.net
  • PHP 5.3 on Windows
    Is the most significant update to PHP on Windows!
    All libraries updated to latest versions(in some cases newer versions that used on Linux)
    Re-write of the build system from scratch
    Top PHP Windows community programmer working for Microsoft (Pierre Joye)
    Build with VS 2008
    Available in 32 and 64 bit version
    Created windows.php.net
    99% of all POSIX calls changed to native Windows calls
  • By the numbers: Running PHPBench looped 5x
    Both computers are a HP 8 core (2 procs x Quad core) 16gb ram.
    Linux (Centos 5.2) vs. Windows Server 2008 x86
    NOTE: phpbench onlytests internal PHP engineperformance. It doesnot do IO of any kind.
  • FastCGI on IIS
    How and where will my application run?
  • PHP on Windows – History
    IIS support has been there for a long time
    Apache runs on Windows as well
    But…
    IIS gives best performance on Windows
    Unfortunately the choice was always between stability and performance…
  • Allow me to explain…
  • And along came improvement!
  • FastCGI
  • Demo
    FastCGI on IIS
  • IIS execution pipeline
    Since your PHP app is part of the IIS execution pipeline…
    …you can use IIS URL rewriting
    …you can use IIS as a load balancer (ARR)
    www.viprive.com
    …you can use any HttpModule out there
    ASP.NET membership / authentication
    Output caching

  • WinCache extension
    Making it even faster…
  • Windows Cache Extension (“WinCache”)
    PHP module for 5.2 and 5.3
    IIS specific PHP accelerator
    So only works in IIS!
    No code modifications needed in your application
    Cache layers:
    Bytecode cache – Caches compiled PHP scripts
    Script cache – Cache script sources in memory to reduce I/O access and UNC file share access
    Relative file path cache – Caches relative file path
    Session cache – Sessions stored in shared memory
    PHP functions to obtain information about the cache status
    http://www.iis.net/download/WinCacheForPhp
  • Demo
    WinCache extension
  • SQL Server Driver for PHP
    Data access should be fast as well!
  • SQL Server Driver for PHP v1.1
    PHP extension for Windows
    So only works on Windows!
    Reliable, scalable and fast integration with SQL Server for PHP
    Relies on the Microsoft SQL Server Native Client to communicate with SQL Server.
    http://bit.ly/cwDLR1
  • “Did you just forgetto mention PDO support?”
  • No, there is no PDO support. Oh, wait!
    Unless you want the new CTP bits!
    SQL Server Driver for PHP v2.0 CTP
    Support for PHP Data Objects (PDO)
    Better UTF-8 support
    Example: Drupal 7 on SQL Serverhttp://www.commerceguys.com/about/news/drupal-7-sql-server-preview
    http://bit.ly/cjGvO3
  • Here are your options!
  • Demo
    SQL Server Driver for PHP
  • Microsoft Web Platform Installer
    “Yum for Windows”?
  • Easy installation of YOUR environment
    Easy installer providing
    Platform installation (IIS, extra modules, configuration, …)
    Both ASP.NET and PHP
    Application installation
    Both ASP.NET and PHP
    http://microsoft.com/web
  • Demo
    Web Platform Installer
  • SDK’s
    What else is out there?
  • Microsoft and PHP = LOTS of goodies
    Some highlights…
    SQL Server Reporting Services SDK for PHP
    OData SDK for PHP
    Windows Azure Tools for Eclipse
    Windows Azure SDK for PHP
    AppFabric SDK for PHP
    Windows Azure Command-Line Tools for PHP
    Eclipse Tools for Silverlight
    Information Cards for PHP
    Internet Explorer Webslices and Accelerators for PHP
    PHP and Silverlight
    SQL CRUD Application
    Wizard for PHP Toolkit for PHP and Bing Maps
    Overview: http://www.interoperabilitybridges.com/
  • SQL Server Reporting Services SDK for PHP
    SSRS?
    Reporting tool in SQL Server
    Very powerful!
    Various output formats
    Can be linked to MySQL, PostgreSQL, …
    API to interoperate with SQL Server Reporting Services
    List available reports within a PHP applications,
    Provide custom parameters from a PHP web form,
    Manage the rendering of the reports within a PHP application
    http://ssrsphp.codeplex.com
  • OData SDK for PHP
    OData?
    Open Data Protocol
    Unlock your data and free it from silos that exist in applications today
    Builds on HTTP, AtomPub and JSON
    RESTful interface
    Way data is delivered in MS CN “Dallas”
    API to OData
    Generate proxy classes to OData feeds
    CRUD on OData feeds
    http://odataphp.codeplex.com/
  • OData SDK for PHP
    /* connect to the OData service */
    $svc = new NorthwindEntities(NORTHWIND_SERVICE_URL);
    /* get the list of Customers in the USA +the list of Orders */
    $query = $svc->Customers()
    ->filter("Country eq 'USA'")
    ->Expand('Orders');
    $customerResponse = $query->Execute();
    /* get only CustomerID and CustomerName */
    $query = $svc->Customers()
    ->filter("Country eq 'USA'")
    ->Select('CustomerID, CustomerName');
    $customerResponse = $query->Execute();
    /* create a new customer */
    $customer = Customers::CreateCustomers('channel9', 'CHAN9');
    $proxy->AddToCustomers($customer);
    /* commit the change on the server */
    $proxy->SaveChanges();
  • Windows Azure
    Microsoft’s Cloud Computing offering
    Web/worker role (= virtual machine)
    Blobs, tables, queues, drives (= storage)
    SQL Azure (= +/- SQL Server)
    AppFabric (= access control & firewall punching)
    “Dallas” (= Data-as-a-Service)
    Working with PHP
    Windows Azure Tools for Eclipse
    Windows Azure SDK for PHP
    AppFabric SDK for PHP
    Windows Azure Command-Line Tools for PHP
    Zend Framework contribution
  • Tooling
    How do I use all this?
  • Microsoft Expression Web
  • Windows Azure Tools for Eclipse
  • Silverlight Tools for Eclipse
  • SEO Optimization Tool
  • What’s in the cloud?
    Resources
    Where can I learn more?
  • Resources
    Microsoft Windows Azure Interop
    http://www.microsoft.com/windowsazure/interop/
    InteropBridges
    http://www.interoperabilitybridges.com/
  • Summary
    PHP on Windows is a priority for Microsoft
    Full range of PHP support Products and Services
    Attract more customers to the MS platform through world-class support and resources
    Microsoft wants you to succeed
  • Questions
    Possibly Answers
  • THANK YOU!
    Maarten Balliauwhttp://blog.maartenballiauw.be