Presentation is loading. Please wait.

Presentation is loading. Please wait.

Tim Keller Lead Developer Umoya Networks · www.umoya.net DTL318.

Similar presentations


Presentation on theme: "Tim Keller Lead Developer Umoya Networks · www.umoya.net DTL318."— Presentation transcript:

1

2 Tim Keller Lead Developer Umoya Networks · www.umoya.net DTL318

3 PHP GATECRASHES A MICROSOFT EVENT

4 PHP at a Microsoft event What on earth? A Microsoft Primer for PHP developers A PHP Primer for Microsoft developers Either way, welcome! Thanks for coming.

5 Who am I Tim Keller (@timkeller or timk.co.za) Your typical Mac/Linux type Lead Developer of a PHP-based cloud hosted tool for teachers and school admins, called staffroom Microsoft-friendly HI, I’M TIM KELLER LEAD PHP DEVELOPER www.mystaffroom.net tim@mystaffroom.net

6 Goals Good intensions Show you some cool stuff Tell you where you can get it Tell you where you can learn more Answer questions Go have a beer with all of you

7 Stuff we’ll talk about 6 things. Simple. Microsoft and Opensource PHP and IIS Powershell for IIS SQL Server Driver for PHP Microsoft Ajax Library Silverlight and PHP

8 TAG TWEETS WITH #techedafrica FOLLOW ME twitter.com/timkeller

9 Microsoft and OpenSource

10 D ENIA L It’s not just a river in Egypt.

11 Microsoft and OpenSource Surprising perhaps MS Redmond OSS lab Staffed by OSS and Linux experts 300 servers of varying types 340+ Linux distros available for testing Tests interoperability of OSS and Windows Research of OSS technologies

12 Microsoft and OpenSource Surprising perhaps Projects so far… Firefox Silverlight support Silverlight/Moonlight common standard Vista Firefox compatibility FastCGI hosting of PHP and Python on IIS SQL Server drivers for PHP and Java

13 Microsoft and OpenSource Surprising perhaps Active and Future projects PHP Active Directory integration PHP SharePoint integration SugarCRM SQL Server connectivity Windows - Apache build support/research

14 Why PHP anyway?

15 WordpressphpBBMediaWiki DrupalGallerySugarCRM DokuWiki SilverStripe CMS Joomla PHP Web Applications

16 CakePHPCodeIgniterDrupal eZ Components KohanaPEAR Zend Framework ZoopHorde PHP Web Frameworks

17 YahooFlickr FacebookDigg YouTubeWikipedia Commercial sites using PHP

18

19 HARD TO IGNORE.

20 PHP on Windows, with IIS

21 PHP on Windows It’s actually been around for a long time Most PHP developers: Develop on Windows Deploy to Linux, BSD, *nix. Perception that PHP on IIS sucks (this was true) Often install Apache for Dev or Production

22 Performance vs. Reliability CGI Invokes a new php.exe process for each request Advantage Very stable Disadvantage SLOOOW due to I/O overhead of Process Creation on Windows ISAPI PHP Loaded as an extension in IIS’s memory space Advantages Better performance Disadvantages Not very stable Many PHP (PECL) extensions are not Thread-Safe FastCGI Process caching and pooling mechanism Advantages Faster than CGI More Stable than ISAPI Can run non-thread- safe versions of PHP and PECL extensions

23 FastCGI: Pooling and Caching PHP processes are reused. No process creation overhead = 20x performance increase PHP HTTP Request index.php HTTP Request index.php HTTP Request login.php HTTP Request login.php PHP HTTP Request header.php HTTP Request header.php FastCGI process pool for PHP5 PHP

24 IIS7+ FastCGI Handler Basic Architecture FastCGI process pool for PHP5 IIS Worker Process Read ConfigurationAuthenticateAuthorizeMap RequestHandle RequestSend ResponseLog Request FastCGI handler ASP.NET Static Request queue php-cgi.exe FastCGI process pool for PHP4 php.exe FastCGI protocol over named pipes or TCP

25 C OMMUNIT Y You’d be surprised what you can accomplish when you work with people who have common goals and ideals.

26 2006 Zend and Microsoft announce collaboration 2007 Zend and PHP Core Devs start optimising PHP5.2.x builds for windows. FastCGI extensions for IIS6. 2008 MS release IIS7 with native FastCGI for PHP.

27 2008 Microsoft’s Pierre Joye and the PHP community conduct major work on the PHP 5.3 codebase. Fixed 60+ Windows-specific bugs Updated every library to latest version (some were 10+ years old) Compiled PHP with VC++ 9 (VS 2008) x86 and x64 builds for Windows

28 2009 Microsoft release IIS 7.5 builds with Windows 7 and Server 2008 R2 builds. Zend ships Zend Core for Windows with Microsoft’s FastCGI implementation

29 Popular Web Servers (June ‘09) Courtesy: Netcraft Web Server Survey, June 2009. IIS7 IIS6 IIS5

30 Where to get all this PHP and FastCGI goodness IIS 6 (Windows Server 2003) http://www.iis.net/php IIS 7 (Windows Vista SP1 and Server 2008) Ships with the product. Activate the CGI feature through Server Manager IIS 7.5 (Windows 7 and Server 2008R2) Supports Failed Request Tracing for FastCGI (PHP)

31 Setting up PHP on Windows & IIS Tim Keller Lead Developer Umoya Networks

32 IIS7 features Remote Management capability XML-based configuration system Modular architecture for reduced attack surface Ability to extend IIS7 using managed code Integration with Windows Media Server Advanced Diagnostics

33 M ISSION IMPOSSIBL E Wait…what?

34 PHP Developers want: Multiple versions of PHP on one server. PHP4PHP5.2PHP5.3PHP6.0

35 URL Rewriting Ever used mod_rewrite in Apache? http://timk.co.za/index.php?type=post&id=34 http://timk.co.za/index.php?type=post&id=34 becomes http://timk.co.za/post/34 http://timk.co.za/post/34 IIS7 offers this, without the need for complex Regular Expressions

36 More PHP'ing Tim Keller Lead Developer Umoya Networks

37 PowerShell and IIS Powerful command line for Windows With IIS7.5 you can manipulate your IIS config from the command line.

38 SQL Server and PHP An INNER JOIN made in heaven? Simple Goal To provide robust, scalable, and reliable SQL Server connectivity to PHP developers targeting the Windows platform. Built by Microsoft with community feedback Version 1.0 released July 2008 http://blogs.msdn.com/sqlphp/http://blogs.msdn.com/sqlphp/ (good blog)

39 ASP.NET AJAX and PHP Take back the web, sorta.

40 User Interface Web Server Request Response Traditional Client/Server User Interface Web Server Ajax Engine AJAX Paradigm What is AJAX?

41 What AJAX (sometimes) means DHTML: HTML + Javascript Animations Drag and Drop Show and Hide Partial page updates User interface makes background calls to server AJA* : XML, HTML, Text, JSON…

42 ASP.NET AJAX A library in three parts MS Ajax Library Javascript files for the frontend ASP.Net Ajax Extensions Server-side.NET code ASP.Net Ajax Control Toolkit Shared-source components The PHP MS AJAX library was released in 2008. http://codeplex.com/phpmsajax http://codeplex.com/phpmsajax

43 ASP.NET AJAX with PHP Tim Keller Lead Developer Umoya Networks

44 Silverlight from PHP

45 Hi, haaaave you met XAML? XML-based description of a Rich User Interface. Part of the Windows Presentation Foundation. PHP can easily output text/xml. XAML also supports UI Events. Which is cool. Hello World!

46 Silverlight from PHP Tim Keller Lead Developer Umoya Networks

47 Futures for PHP on Windows IE WebSlices from PHP applications PHP MS Virtual Earth Integration On-going SQL Server driver development Azure PHP SDK

48 Call to action We want you! Enable FastCGI in IIS7 Install PHP Grab some cool PHP apps Tell your friends how great PHP is on IIS. Tweet about it!

49 Session Resources Web Platform Installer http://tinyurl.com/mswebplatform http://tinyurl.com/mswebplatform PHP on Windows central http://www.iis.net/php Microsoft AJAX for PHP www.codeplex.com/phpmsajax Silverlight www.silverlight.net PHP builds and sourcecode for Windows http://windows.php.net URL Rewrite in IIS7 http://www.iis.net/extensions/URLRewrite

50

51 www.microsoft.com/teched International Content & Community http://microsoft.com/technet Resources for IT Professionals http://microsoft.com/msdn Resources for Developers www.microsoft.com/learning Microsoft Certification & Training Resources Resources Required Slide Speakers, TechEd 2009 is not producing a DVD. Please announce that attendees can access session recordings from Tech-Ed website. These will only be available after the event. Required Slide Speakers, TechEd 2009 is not producing a DVD. Please announce that attendees can access session recordings from Tech-Ed website. These will only be available after the event. Tech ·Ed Africa 2009 sessions will be made available for download the week after the event from: www.tech-ed.co.zawww.tech-ed.co.za

52 Related Content Breakout Sessions (session codes and titles) Whiteboard Sessions (session codes and titles) Hands-on Labs (session codes and titles) Required Slide Speakers, please list the Breakout Sessions, TLC Interactive Theaters and Labs that are related to your session. Any queries, please check with your Track Owner. Required Slide Speakers, please list the Breakout Sessions, TLC Interactive Theaters and Labs that are related to your session. Any queries, please check with your Track Owner.

53 Track Resources Resource 1 Resource 2 Resource 3 Resource 4 Required Slide Track Owners to provide guidance. Please address any queries to your track owners. Required Slide Track Owners to provide guidance. Please address any queries to your track owners.

54 Required Slide Complete a session evaluation and enter to win! 10 pairs of MP3 sunglasses to be won

55 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Required Slide


Download ppt "Tim Keller Lead Developer Umoya Networks · www.umoya.net DTL318."

Similar presentations


Ads by Google