PHP i Microsoft - kto się lubi, ten się czubi

1,665 views
1,583 views

Published on

Autor: Michał Żyliński

Ja mówię, wy ziewacie – mam szczerą nadzieję, że nie skończy się to typową prezentacją sponsora. Postaram się pokazać gdzie w środku Microsoft spotkać można open source, przedstawić z grubsza aktualne projekty dotyczące bezpośrednio lub pośrednio PHP oraz zachęcić do (spontanicznych) pytań i dyskusji. Taka okazja nie zdarza się w końcu zbyt często!

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,665
On SlideShare
0
From Embeds
0
Number of Embeds
26
Actions
Shares
0
Downloads
20
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

PHP i Microsoft - kto się lubi, ten się czubi

  1. 1. PHP i Microsoft<br />Michał Żyliński<br />Kto się lubi, ten się czubi<br />
  2. 2. Agenda<br />OSS i/vs Microsoft - historia i kontekst <br />Dlaczego lubimy PHP?<br />Oznaki miłości<br />
  3. 3. Społeczności<br />Partnerstwo<br />Możliwość wyboru<br />Wkład<br />
  4. 4. Port 25<br />Centrum informacji dotyczących działań open source wokół technologii Microsoft<br />14 mln wizyt, 20% przeglądarek to Linux/Unix<br />http://port25.technet.com<br />
  5. 5. InteroperabilityBridges<br />Katalog wszystkich projektów Microsoft, które dotyczą „zewnętrznych” technologii (PHP, Java, C, Objective C, Ruby itd.)<br />http://www.interoperabilitybridges.com/<br />
  6. 6. Przecież 50% projektów na SourceForge działa na Windows, a 1/3 tylko na Windows ;)<br />Lepsza kontrola nad platformą<br />Utrzymuje również „komercyjne” projekty MS<br />Team Foundation Server w tle<br />http://www.codeplex.com<br />CodePlex<br />
  7. 7. Open Source <br />Technology Center<br />
  8. 8. OSTC – garść faktów<br />Założone w 2004roku (1 osoba, 2 komputery)<br />2 ośrodki: Open Source Software Lab w Redmond oraz Joint Interoperability Lab w Cambridge<br />Ponad 500 serwerów i obsługujących ponad 300 systemów operacyjnych (głównie dystrybucji Linuxa)<br />Największe zagęszczenie CPU ze wszystkich naszych labów<br />Zatrudnia ekspertów od *nixa i OSS (JIL współtworzy Novell)<br />
  9. 9. OSTC – cele i efekty<br />Techniczna analiza rozwiązań OSS<br />Zwiększenie liczby projektów OSS współpracujących (dobrze) z platformą Windows<br />Zarządzanie tożsamością, wirtualizacja, bezpieczeństwo<br />Dialog i współpraca ze środowiskiem OSS<br />Dotychczasowe projekty<br />Windows Media Player 11 w Firefoxie<br />Silverlight/Moonlight w Firefoxie<br />Poprawki do linuxowegokernela w lipcu 2009<br />Sterowniki SQL Servera dla Javy i PHP<br />Fast CGI – Java/PHP/Python<br />Firefox na Windows Vista<br />Aktualne prace<br />Hyper-V a Linux<br />ADODB w PHP PEAR<br />Wsparcie CardSpace w Javie/Ruby/Pythonie/C<br />
  10. 10. Szatański plan<br />Windows = najlepsza platforma<br /> dla rozwiązań Open Source<br />I PHP też!<br />
  11. 11. PHP a Microsoft<br />PHP działa na Windows od ponad dekady<br />Windows jest wciąż dominującą platformą wśród developerów PHP<br />Kompleksowe podejście:<br />Ułatwienie instalacji<br />Aktywna praca nad ulepszeniem działania PHP na Win<br />Benefity dla programistów PHP związane z platformą<br />Zaangażowanie się w już istniejące, najpopularniejsze projekty wykorzystujące PHP<br />
  12. 12. Web Platform Installer<br />http://www.microsoft.com/web/downloads/platform.aspx<br />
  13. 13. WPI<br />
  14. 14. Expression Web 3<br />Profesjonalny edytor HTML<br />Bardzo mocny nacisk na kompatybilność i standardy<br />Pełne wsparcie dla PHP i ASP.NET <br />
  15. 15. PHP w Expression Web 3<br />Kolorowanie kodu, intellisense, snippety<br />Wbudowany serwer WWW (nie musisz uruchamiać Apache lub IIS)<br />Wsparcie dla PHP 5.2.5 i FastCGI<br />Snapshot Preview – wierny podgląd wyglądu strony w samym narzędziu<br />SuperPreview – weryfikacja poprawności renderowania strony w różnych przeglądarkach (IE6/7/8, Firefox) – idealne do debugowania<br />Integracja z TFS, Expression Design i ExpressionEncoderem<br />
  16. 16. Expression Web w praktyce<br />
  17. 17. Dlaczego Windows kocha PHP <br />Od wersji 5.3 uczestniczymy aktywnie w dostosowywaniu PHP do platformy Windows<br />Win32API zamiast wywołańPOSIXowych<br />Optymalizacja wydajności pod kątem FastCGI w IIS<br />Usunięcie ponad 60 błędów dotyczących Win<br />Więcej na: http://windows.php.net<br />
  18. 18. PHP w IIS 7<br />Mam przecież Apache…<br />
  19. 19. PHP w IIS 7 1/2<br />FastCGI – jedyny słuszny wybór<br />Otwarty standard<br />Wykorzystywany przez wiele frameworków (Django, RoR)<br />Bardziej stabilne niż filtr ISAPI<br />Znacznie szybszy niż standardowe CGI<br />Gwarancja stabilności i wydajności<br />Łatwa konfiguracja i deployment(szczegóły na http://php.iis.net)<br />
  20. 20. PHP w IIS 7 2/2<br />Łatwa migracja:<br />Najpopularniejsze aplikacje zostały już przetestowane i udokumentowane<br />Kreatory do migracji z mod_rewrite na UrlRewrite<br />Elastyczność:<br />Możliwość uruchomienia różnych środowisk (w tym wersji PHP) na tym samym serwerze<br />Zarządzanie poprzez IIS Managera, PowerShell lub API<br />Rozszerzanie aplikacji PHP o funkcjonalność .NET (ASP.NET intergratedpipeline)<br />Integracja z windowsauthentication<br />Wdrażanie przez x-copy<br />Dopalacze:<br />OutputCaching<br />Kompresja<br />
  21. 21. Parę słów o wydajności<br />Windows Cache Extension 1.0 <br />podobne do APC tylko na Windows <br />Licencja BSD<br />Dostępne w ramach PECL<br />3-poziomowy cache:<br />Kompilowanie stron i przechowywanie bajtkodu w pamięci<br />Dostęp do plików<br />Względne ścieżki do plików<br />Sesje przechowywane we współdzielonej pamięci (v.1.1)<br />Kompatybilny z PHP 5.2 i 5.3<br />Kompatybilny z Joomlą, Drupalem i Sugar CRM<br />
  22. 22. PHP a SQL Server<br />Microsoft SQL Server Driver <br />Darmowy, Gotowy sterownik kompatybilny z SQL Server 2005 i 2008 i R2 (m.in. nowe typy danych)<br />Ponieważ korzysta z ODBC działa tylko na Windows<br />Otwarty kod źródłowy<br />Kompatybilny z SQL Azure<br />Wspiera PDO<br />http://www.codeplex.com/SQLSRVPHP<br />
  23. 23. Reporting Services<br />Report Builder<br />Report Designer<br />Report Server<br />Web Service API<br />Formaty wyjściowe (HTML, Excel, Word, PDF, inne)<br />Źródła danych<br />(ODBC, SQL, XML/A, inne)<br />Scheduling<br />Przetwarzanie w tle<br />Report Manager<br />Autentykacja<br />Własny serwer WWW<br />Metadane<br />
  24. 24. Reporting Services<br />
  25. 25. SSRS SDK for PHP<br />Dostęp do silnika Reporting Services z kodu PHP<br />Łatwa integracja z istniejącymi aplikacjami (dowolne źródło danych)<br />http://ssrsphp.codeplex.com/<br />Architektura<br />PHP Runtime (dowolny OS)<br />Dowolna aplikacja PHP<br />SOAP<br />HTML<br />Report Formats<br />Windows Server<br />Report Manager<br />Windows<br />Web Service API<br />BI Development Studio<br />Przetwarzanie danych<br />Linked Server<br />Import<br />with Advanced Services<br />SQL Server, <br />OLE DB, ODBC MySQL, Oracle, etc.<br />Źródła danych<br />
  26. 26. SSRS PHP SDK w praktyce<br />SugarCRM<br />Designing and Building Reports <br />Windows<br />BI Development Studio<br />SurgarCRM<br />Module<br />Report Templates<br />Windows Server<br />Report Manager<br />Web Service API<br />Data Retrieval<br />SOAP<br />Linked Server<br />with Advanced Services<br />SugarCRM<br />MySQLDatabase<br />
  27. 27.
  28. 28. Platforma Windows Azure<br />SQL Azure Data Sync=cool<br />Np. sesje PHP<br />Łał! Naprawdę wystarczy tylko zmienić connection string?<br />
  29. 29. Materializacja chmury<br />
  30. 30. PHP a Windows Azure<br />Windows w chmurze<br />Wysoce skalowalny<br />Automatycznie zarządzany<br />Elastyczny<br />Pewnie, i dorzuć do tego jeszcze MySQLai memcached.<br />Aaaa, i zamiast Visual Studio chcemy Eclipse!<br />Skoro taki elastyczny, to może wrzucić tam np. PHP?<br />
  31. 31. Windows Azure daje radę 1/3<br />Gotowa paczka do Eclipse: http://windowsazure4e.org<br />Kompletne IDE dla PHP<br />Tworzenie i zarządzanie projektem<br />Storage Explorer<br />Testy w ramach WA Development Fabric<br />Łatwy deployment „w chmurę”<br />
  32. 32. Windows Azure daje radę 2/3<br />Windows AzureSDK for PHP (http://phpazure.codeplex.com/)<br />Głównie skoncentrowany na obsłudze Windows Azure Storage<br />
  33. 33. Windows Azure daje radę 3/3<br />Co z MySQL?<br />Przekopiuj pliki binarne<br />Przekopiuj dane<br />Zmień konfigurację (IP, port itd.)<br />Zaawanse scenariusze też działają (np. replikacja, backupy)<br />VIP<br />Eee, to z memcached pewnie też się da…<br />Load Balancer<br />Web Role<br />MySQL<br />Worker Role<br />Z Javą i Ruby także!<br />Windows AzureMySQL PHP Solution Accelerator (http://code.msdn.microsoft.com/winazuremysqlphp) <br />
  34. 34. Azure dla wygodnych<br />Local (Development Fabric) or Cloud<br />Gotowe skrypty pozwalające na łatwy deployment aplikacji w PHP bezpośrednio do chmury<br />Obsługa z linii komend<br />Generuje gotową paczkę instalacyjną (*.cspkg) oraz plik konfiguracyjny (*.cscfg)<br />Deployment w chmurze lub w środowisku testowym (Local Development Fabric)<br />http://azurephptools.codeplex.com<br />1<br />2<br />3<br />Windows Azure Command-line Tools for PHP <br />
  35. 35. Inne ciekawostki<br />PHPExcel<br />Tworzenie i odczyt arkuszy z Office 2007<br />Jeden z najbardziej popularnych projektów na CP<br />http://phpexcel.codeplex.com/<br />PHPWord i PHPPowerPoint<br />Phalanger– kompilator PHP do .NET (również Mono) - http://phalanger.codeplex.com/<br />PHPLinq, OData SDK, Virtual Earth SDK, BING API, Live Messenger…<br />
  36. 36. Phalanger<br />
  37. 37. Ufff… czas na podsumowanie<br />PHP na Windows? Da się – przynajmniej równie dobrze<br />Masz wszystko co potrzebne – doskonale znany OS, narzędzia programistyczne, rozwiązania serwerowe, wsparcie<br />Zacznij od WebPI<br />Michal.Zylinski@microsoft.com lub plweb@microsoft.com<br />
  38. 38. Program BizSpark<br />Oferta dla młodych przedsiębiorców (nie tylko przedsiębiorstw!)<br />Formalne kryteria:<br />Działalność software’owa<br />Mniej niż 3 lata<br />Poniżej 0,5 mln $ przychodu<br />Oferta: komplet narzędzi + licencje serwerowe<br />http://www.microsoft.com/BizSpark<br />
  39. 39. Program BizSpark - partnerzy<br />
  40. 40. WebsiteSpark<br />Agencje interaktywne/osoby zajmujące się tworzeniem komercyjnych serwisów WWW<br />Maksymalnie 10 pracowników<br />Oferta: komplet narzędzi + licencje serwerowe<br />http://www.websitespark.com<br />
  41. 41. Pytania?<br />Michal.Zylinski@microsoft.com<br />

×