SlideShare a Scribd company logo
Windows

      Drupal
       Alessandro Pilotti
          @alexpilotti
      MVP ASP.NET / IIS
     Windows Azure Insider




MCSD, MCAD, MCSE, MCDBA, MCT
   Red Hat Certified Engineer
Some Facts About the
         Windows OS
 Based on Windows NT, released in July 1993

 Hardware independent OS

 POSIX subsystem

 Provides excellent command line tools
   PowerShell

 Excellent security model

 Server Core option for minimal GUI and footprint
Windows and IIS
Product Name          OS Version         IIS   Release
Windows XP            5.1                5.1   08/01
Windows Server 2003   5.2                6.0   03/03
Windows Vista         6.0 (Build 6000)   7.0   01/07
Windows Server 2008   6.0 (Build 6001)   7.0   03/08

Windows 7             6.1                7.5   07/09
Windows Server 2008   6.1                7.5   07/09
R2
Windows 8             6.2                8.0   ?
Windows Server 2012   6.2                8.0   ?
IIS 6
 Kernel level component (http.sys) listens to HTTP requests
   HUGE performance improvement over IIS 5

 All user code runs in separate processes
   Worker Process (w3wp.exe)
   Crashes in worker processes don’t affect the stability of the service

 Web gardens
   Multiple WP per single web applications

 Configuration stored in a XML metabase
   MetaBase.Xml
   MBSchema.Xml
IIS 7.x / 8.0
 Complete redesign over IIS 6.0
 Modular design
 http.sys is still part of the architecture
 Improved remote administration and delegation
 Enhanced command line and scripting tools
   Including PowerShell cmdlets
 Flexible model not limited to HTTP
 Tight integration with WCF
Security
 Windows is a very secure OS!
   Running Internet Explorer as administrator and getting malware
    does not mean that the system is flawed
   RunAs permits to execute processes as different users

 Windows Server 2008 introduced some unique security
  features

 Windows Firewall
 Since Windows Server 2008:
   Address space layout randomization (ASLR)
   Network Access Protection (NAP)
Comparing PHP Stacks

 Linux + Apache + MySQL + PHP
 Windows + Apache + MySQL + PHP
 Windows + IIS + MySQL + PHP
 Windows + IIS + MS SQL Server + PHP
Linux + Apache + MySQL + PHP

 Pros
   Most known and deployed stack in OSS world
   Linux is a highly configurable operating system
   Most Linux distributions can easily be configured for Apache,
    MySQL and PHP (yum / apt-get / etc)
   Apache is a highly modular and scalable web server
   Lots of documentation available
   Tightly integrated update process (yum / apt-get)
 Cons
   Lack of simple configuration tools
   Configuration requires a wide knowledge
   Deployment differences between distributions
Windows + Apache + MySQL + PHP

 Pros
   Most of the components are shared with the LAMP stack
   Suitable for solutions that require integration with both Apache
    modules (e.g. mod_rewrite) and Windows
   Until FastCGI for IIS showed up, undoubtfully the best PHP
    stack on Windows
   Tools like XAMPP provide an easy deployment option
     http://en.wikipedia.org/wiki/Comparison_of_WAMPs
 Cons
     Performance
     Limited documentation and examples
     Limited integration in the Windows ecosystem
     Heterogeneous scenario for security updates
Windows + IIS + MySQL + PHP

 Pros
     Performance (FastCGI and WinCache)
     Tightly integrated in the IIS 7.x ecosystem
     Easy to configure an deploy via WebPI
     Easy to manage via IIS Manager
     Easy to script via WebDeploy and Powershell

 Cons
   Web apps requiring integration with Apache modules
      need to be reviewed
MySQL and Microsoft SQL Server
 Using PHP Data Objects PDO eases portability issues
 SQL Server is a choice to evaluate in scenarios that
  require high availability

 PHP Drivers for SQL Server 3.0 just released!
 Drupal + SQL Server through Commerce Guys module
PHP on Windows
 COM integration
   Simplest way to access OS native 3rd party features
   Marshaling performance is not brilliant (IDispatch / late
     binding)
 .NET integration (experimental)
 W32Api (experimental)
   Register / Invoke API functions
   Be careful with the parameters on the stack
 win32service
   start/stop/register/unregister services
 Note: flock() has a slightly different behavior on Windows
IIS 7 Modules
 Individual features used to process a request
 Executed in a pipeline
 Native
   OS specific binaries (e.g. written in C++)
   More performant
 Managed
   .NET assemblies, executed by the .NET CLR
   More secure and manageable
Windows Server 2012 - SNI
 Windows Server 2012 introduces some important
  features
   Huge performance improvements for multi-tenant!



 Server Name Indication (SNI)
   Assign different X509 certificates to different host headers
   Requires IE >= 7.0, Chrome >= 6.0, FF >= 2.0,
    SafariMobile >= 5.0
   Non supported in IE on Windows XP (even on IE 9)!
CPU Throttling
 CPU resource pooling is a problem in IIS 7.x
   Processes exceeding their quota get killed, not throttled
   Lots of errors in user applications
   Not suitable for multitenant scenarios
 This feature required specific kernel support
Windows Server 2012
   CPU Throttling
WebPI
 Microsoft Web Platform Installer (WebPI) is a free tool
  that simplifies deployment of web solutions
   IIS features and extensions
       WinCache, PHP Drivers for SQL Server, PHP Manager
     Frameworks
       PHP 5.2 / 5.3, .Net, etc
     Web applications
       Drupal, Joomla, Wordpress, DotNetNuke, Orchard, etc
     Database
       MS SQL Server Express, MySQL, etc
     WebMatrix
       WebMatrix 2 RC available!
Drupal via WebPI
 Fastest way to setup Drupal on IIS
 Takes care of all the steps
   Deploy of Drupal (6.x or 7.x)
   Dependencies
     PHP, IIS: CGI, URL Rewrite, VC9, WinCache, etc
   File permissions
   Database creation
Windows Cache Extension for
          PHP
 Open source project developed by Microsoft
 IIS Specific accelerator
 Requires PHP 5.2 or 5.3 x86
   Non thread safe version
 Provides features not available in APC and
  other accelerators
 Current version: 1.1
Drush 5.x
 A command line shell and scripting interface
 Written in PHP
 MS SQL Server is supported
 Windows setup available on
  http://drush.ws/drush_windows_installer
   Takes care of all required dependencies
   Requires elevation
Drush aliases
 Create a file aliases.drushrc.php in %UserProfile%.drush


$aliases[’drupal7'] = array(

        'root' => '/path/to/drupal',

        'uri' => 'dev.mydrupalsite.com',

        'os' => 'Windows',

        'remote-user' => 'Administrator',

        'winrs-password' => 'Passw0rd',

        'remote-host' => 'DrupalWeb1'

);
Server Farm
 IIS extensions:
   Application request Routing (ARR)
   Web Farm Framework (WFF)



 You can enable independently
   Load balancing and caching
   Server farm provisioning
     Platform / applications
WebDeploy
 Web Application Packaging
     Application or site, including DBs
     Sources and destinations can be
       Live servers
       Zip files

 Deployment
     Administrative rights not required
     Integration with VMSVC for remote deployment

 IIS server synchronization
     Entire server / site / application
     Differential
     Detects missing dependencies
   http://www.microsoft.com/web/websitespark/

   Software
     Production licenses for self hosting: Windows Web Server 2008 R2; SQL Server 2008 Web
        Edition and development tools

   Azure
     WebsiteSpark members get up to $1400* in annual Windows Azure resources

   Training
     Free online training and access to the MSDN developer community and resources

   Support
     2 professional support incidents

   Criteria
     An individual or a company with < than 10 employees engaged in website design &
        development

   Check out also BizSpark for startups
     http://www.microsoft.com/bizspark/
Resources
http://groups.drupal.org/drupal-windows

http://channel9.msdn.com/Series/PHP-at-Scale-on-the-Microsoft-Platform

Free Webcasts!
    Deploying Drupal on IIS with Web Platform Installer (WebPI)
    Deploying Drupal on IIS without Web Platform Installer (WebPI)
    Building a Drupal Web Farm with IIS and Application Request Routing (ARR) -
       Part 1
      Building a Drupal Web Farm with IIS - Part 2
      IIS URL Rewrite for PHP and Drupal
      Web Deployment Tool (WebDeploy) for Drupal sites
      Optimizing Drupal and PHP sites on IIS, including Profile Guided Optimization
       (PGO)
    Optimizing Drupal in IIS with Memcache and Solr
    Configuring and managing Drupal with SQL Server
    Managing Drupal on the Windows Platform with Drush
Ad

More Related Content

What's hot (20)

Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3
Dave Hay
 
Introduction to vSphere logs
Introduction to vSphere logsIntroduction to vSphere logs
Introduction to vSphere logs
Kaushik Chakraborty
 
Microsoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud ComputingMicrosoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud Computing
Josh Holmes
 
INTRODUCTION TO IIS
INTRODUCTION TO IISINTRODUCTION TO IIS
INTRODUCTION TO IIS
sanya6900
 
Introduction to Wildfly 8 - Marchioni
Introduction to Wildfly 8 -  MarchioniIntroduction to Wildfly 8 -  Marchioni
Introduction to Wildfly 8 - Marchioni
Codemotion
 
Ibm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guideIbm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guide
Khemnath Chauhan
 
Hardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinHardening Apache Web Server by Aswin
Hardening Apache Web Server by Aswin
Agate Studio
 
IIS
IISIIS
IIS
Giritharan V
 
IIS interview questions and answers
IIS interview questions and answersIIS interview questions and answers
IIS interview questions and answers
Interviewwiz
 
Windows Server 2008 R2 Dev Session 01
Windows Server 2008 R2 Dev Session 01Windows Server 2008 R2 Dev Session 01
Windows Server 2008 R2 Dev Session 01
Clint Edmonson
 
06.m3 cms set-upwebserver
06.m3 cms set-upwebserver06.m3 cms set-upwebserver
06.m3 cms set-upwebserver
tarensi
 
Unleashing the Power: A Lap Around PowerShell 3.0
Unleashing the Power: A Lap Around PowerShell 3.0Unleashing the Power: A Lap Around PowerShell 3.0
Unleashing the Power: A Lap Around PowerShell 3.0
Sarah Dutkiewicz
 
Conduct JBoss EAP 6 seminar
Conduct JBoss EAP 6 seminarConduct JBoss EAP 6 seminar
Conduct JBoss EAP 6 seminar
Syed Shaaf
 
Understanding IIS
Understanding IISUnderstanding IIS
Understanding IIS
Om Vikram Thapa
 
How to Monitor IIS
How to Monitor IISHow to Monitor IIS
How to Monitor IIS
Power Admin LLC
 
Shailendra-Linux-Cloud(1)
Shailendra-Linux-Cloud(1)Shailendra-Linux-Cloud(1)
Shailendra-Linux-Cloud(1)
Shailendra Singh
 
Websphere interview Questions
Websphere interview QuestionsWebsphere interview Questions
Websphere interview Questions
gummadi1
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
Anandraj Kulkarni
 
WAS 8 Webcast
WAS 8 WebcastWAS 8 Webcast
WAS 8 Webcast
sierrahotel
 
system automation, integration and recovery
system automation, integration and recoverysystem automation, integration and recovery
system automation, integration and recovery
Derek Chang
 
Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3Installing web sphere application server v7 on red hat enterprise linux v6.3
Installing web sphere application server v7 on red hat enterprise linux v6.3
Dave Hay
 
Microsoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud ComputingMicrosoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud Computing
Josh Holmes
 
INTRODUCTION TO IIS
INTRODUCTION TO IISINTRODUCTION TO IIS
INTRODUCTION TO IIS
sanya6900
 
Introduction to Wildfly 8 - Marchioni
Introduction to Wildfly 8 -  MarchioniIntroduction to Wildfly 8 -  Marchioni
Introduction to Wildfly 8 - Marchioni
Codemotion
 
Ibm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guideIbm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guide
Khemnath Chauhan
 
Hardening Apache Web Server by Aswin
Hardening Apache Web Server by AswinHardening Apache Web Server by Aswin
Hardening Apache Web Server by Aswin
Agate Studio
 
IIS interview questions and answers
IIS interview questions and answersIIS interview questions and answers
IIS interview questions and answers
Interviewwiz
 
Windows Server 2008 R2 Dev Session 01
Windows Server 2008 R2 Dev Session 01Windows Server 2008 R2 Dev Session 01
Windows Server 2008 R2 Dev Session 01
Clint Edmonson
 
06.m3 cms set-upwebserver
06.m3 cms set-upwebserver06.m3 cms set-upwebserver
06.m3 cms set-upwebserver
tarensi
 
Unleashing the Power: A Lap Around PowerShell 3.0
Unleashing the Power: A Lap Around PowerShell 3.0Unleashing the Power: A Lap Around PowerShell 3.0
Unleashing the Power: A Lap Around PowerShell 3.0
Sarah Dutkiewicz
 
Conduct JBoss EAP 6 seminar
Conduct JBoss EAP 6 seminarConduct JBoss EAP 6 seminar
Conduct JBoss EAP 6 seminar
Syed Shaaf
 
Websphere interview Questions
Websphere interview QuestionsWebsphere interview Questions
Websphere interview Questions
gummadi1
 
system automation, integration and recovery
system automation, integration and recoverysystem automation, integration and recovery
system automation, integration and recovery
Derek Chang
 

Similar to Windows Loves drupal (20)

The New Efficiency
The New EfficiencyThe New Efficiency
The New Efficiency
Craig Bailey
 
Php Presentation
Php PresentationPhp Presentation
Php Presentation
Manish Bothra
 
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
Katrien De Graeve
 
Windows Server 2008 - Web and Application Hosting
Windows Server 2008 - Web and Application HostingWindows Server 2008 - Web and Application Hosting
Windows Server 2008 - Web and Application Hosting
Information Technology
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
guest0a62e8
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6
Ido Flatow
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
George Kanellopoulos
 
Drupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure WebsitesDrupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure Websites
Cory Fowler
 
Win08 R2 It Pro Overview
Win08 R2 It Pro OverviewWin08 R2 It Pro Overview
Win08 R2 It Pro Overview
guest092b9a8
 
Windows Server 2008 R2
Windows Server 2008 R2Windows Server 2008 R2
Windows Server 2008 R2
Rishu Mehra
 
Microsoft Azure
Microsoft AzureMicrosoft Azure
Microsoft Azure
Mohab El-Shishtawy
 
Make Web, Not War - Installfest: Extend Your Web Server, Rodney Buike
Make Web, Not War - Installfest: Extend Your Web Server, Rodney BuikeMake Web, Not War - Installfest: Extend Your Web Server, Rodney Buike
Make Web, Not War - Installfest: Extend Your Web Server, Rodney Buike
Make Web Not War
 
Wordpress on Windows
Wordpress on WindowsWordpress on Windows
Wordpress on Windows
Josh Holmes
 
Php On Windows
Php On WindowsPhp On Windows
Php On Windows
Guy Burstein
 
Azure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App PlatformAzure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App Platform
giventocode
 
Road Show Asp Net
Road Show Asp NetRoad Show Asp Net
Road Show Asp Net
Shihabudheen Web Developer
 
Partying with PHP on Microsoft Internet Information Services 7
Partying with PHP on Microsoft Internet Information Services 7Partying with PHP on Microsoft Internet Information Services 7
Partying with PHP on Microsoft Internet Information Services 7
goodfriday
 
IIS 6.0 and asp.net
IIS 6.0 and asp.netIIS 6.0 and asp.net
IIS 6.0 and asp.net
Rishi Kothari
 
Server2008 R2 Overview
Server2008 R2 OverviewServer2008 R2 Overview
Server2008 R2 Overview
volkerwill
 
Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1
ukdpe
 
The New Efficiency
The New EfficiencyThe New Efficiency
The New Efficiency
Craig Bailey
 
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
phpbenelux - Microsoft & PHP (Web Platform Installer, Bridges and Azure)
Katrien De Graeve
 
Windows Server 2008 - Web and Application Hosting
Windows Server 2008 - Web and Application HostingWindows Server 2008 - Web and Application Hosting
Windows Server 2008 - Web and Application Hosting
Information Technology
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
guest0a62e8
 
Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6Learning ASP.NET 5 and MVC 6
Learning ASP.NET 5 and MVC 6
Ido Flatow
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
George Kanellopoulos
 
Drupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure WebsitesDrupal DevOps on Microsoft Azure Websites
Drupal DevOps on Microsoft Azure Websites
Cory Fowler
 
Win08 R2 It Pro Overview
Win08 R2 It Pro OverviewWin08 R2 It Pro Overview
Win08 R2 It Pro Overview
guest092b9a8
 
Windows Server 2008 R2
Windows Server 2008 R2Windows Server 2008 R2
Windows Server 2008 R2
Rishu Mehra
 
Make Web, Not War - Installfest: Extend Your Web Server, Rodney Buike
Make Web, Not War - Installfest: Extend Your Web Server, Rodney BuikeMake Web, Not War - Installfest: Extend Your Web Server, Rodney Buike
Make Web, Not War - Installfest: Extend Your Web Server, Rodney Buike
Make Web Not War
 
Wordpress on Windows
Wordpress on WindowsWordpress on Windows
Wordpress on Windows
Josh Holmes
 
Azure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App PlatformAzure Cloud Dev Camp - App Platform
Azure Cloud Dev Camp - App Platform
giventocode
 
Partying with PHP on Microsoft Internet Information Services 7
Partying with PHP on Microsoft Internet Information Services 7Partying with PHP on Microsoft Internet Information Services 7
Partying with PHP on Microsoft Internet Information Services 7
goodfriday
 
Server2008 R2 Overview
Server2008 R2 OverviewServer2008 R2 Overview
Server2008 R2 Overview
volkerwill
 
Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1
ukdpe
 
Ad

More from Alessandro Pilotti (15)

OpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in OcataOpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in Ocata
Alessandro Pilotti
 
Strategies for migrating workloads from VMware to OpenStack
Strategies for migrating workloads from VMware to OpenStackStrategies for migrating workloads from VMware to OpenStack
Strategies for migrating workloads from VMware to OpenStack
Alessandro Pilotti
 
Puppet + Windows Nano Server
Puppet + Windows Nano ServerPuppet + Windows Nano Server
Puppet + Windows Nano Server
Alessandro Pilotti
 
OpenStack + Nano Server + Hyper-V + S2D
OpenStack + Nano Server + Hyper-V + S2DOpenStack + Nano Server + Hyper-V + S2D
OpenStack + Nano Server + Hyper-V + S2D
Alessandro Pilotti
 
Building a Microsoft cloud with open technologies
Building a Microsoft cloud with open technologiesBuilding a Microsoft cloud with open technologies
Building a Microsoft cloud with open technologies
Alessandro Pilotti
 
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and WindowsOpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
Alessandro Pilotti
 
Interoperable OpenStack guest provisioning with Cloudbase-Init
Interoperable OpenStack guest provisioning with Cloudbase-InitInteroperable OpenStack guest provisioning with Cloudbase-Init
Interoperable OpenStack guest provisioning with Cloudbase-Init
Alessandro Pilotti
 
OpenStack and Windows
OpenStack and WindowsOpenStack and Windows
OpenStack and Windows
Alessandro Pilotti
 
An HTML5 client to connect to the Hyper-V console
An HTML5 client to connect to the Hyper-V consoleAn HTML5 client to connect to the Hyper-V console
An HTML5 client to connect to the Hyper-V console
Alessandro Pilotti
 
Hyper-V OpenStack Nova Compute
Hyper-V OpenStack Nova ComputeHyper-V OpenStack Nova Compute
Hyper-V OpenStack Nova Compute
Alessandro Pilotti
 
Drupal, Memcache and Solr on Windows
Drupal, Memcache and Solr on WindowsDrupal, Memcache and Solr on Windows
Drupal, Memcache and Solr on Windows
Alessandro Pilotti
 
PHP and FastCGI Performance Optimizations
PHP and FastCGI Performance OptimizationsPHP and FastCGI Performance Optimizations
PHP and FastCGI Performance Optimizations
Alessandro Pilotti
 
Managing Drupal on Windows with Drush
Managing Drupal on Windows with DrushManaging Drupal on Windows with Drush
Managing Drupal on Windows with Drush
Alessandro Pilotti
 
Building drupal web farms with IIS - part 1
Building drupal web farms with IIS - part 1Building drupal web farms with IIS - part 1
Building drupal web farms with IIS - part 1
Alessandro Pilotti
 
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
Building modern web sites with ASP .Net Web API, WebSockets and RSignalBuilding modern web sites with ASP .Net Web API, WebSockets and RSignal
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
Alessandro Pilotti
 
OpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in OcataOpenStack and Windows - What's new in Ocata
OpenStack and Windows - What's new in Ocata
Alessandro Pilotti
 
Strategies for migrating workloads from VMware to OpenStack
Strategies for migrating workloads from VMware to OpenStackStrategies for migrating workloads from VMware to OpenStack
Strategies for migrating workloads from VMware to OpenStack
Alessandro Pilotti
 
OpenStack + Nano Server + Hyper-V + S2D
OpenStack + Nano Server + Hyper-V + S2DOpenStack + Nano Server + Hyper-V + S2D
OpenStack + Nano Server + Hyper-V + S2D
Alessandro Pilotti
 
Building a Microsoft cloud with open technologies
Building a Microsoft cloud with open technologiesBuilding a Microsoft cloud with open technologies
Building a Microsoft cloud with open technologies
Alessandro Pilotti
 
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and WindowsOpenStack Summit 2013 Hong Kong - OpenStack and Windows
OpenStack Summit 2013 Hong Kong - OpenStack and Windows
Alessandro Pilotti
 
Interoperable OpenStack guest provisioning with Cloudbase-Init
Interoperable OpenStack guest provisioning with Cloudbase-InitInteroperable OpenStack guest provisioning with Cloudbase-Init
Interoperable OpenStack guest provisioning with Cloudbase-Init
Alessandro Pilotti
 
An HTML5 client to connect to the Hyper-V console
An HTML5 client to connect to the Hyper-V consoleAn HTML5 client to connect to the Hyper-V console
An HTML5 client to connect to the Hyper-V console
Alessandro Pilotti
 
Hyper-V OpenStack Nova Compute
Hyper-V OpenStack Nova ComputeHyper-V OpenStack Nova Compute
Hyper-V OpenStack Nova Compute
Alessandro Pilotti
 
Drupal, Memcache and Solr on Windows
Drupal, Memcache and Solr on WindowsDrupal, Memcache and Solr on Windows
Drupal, Memcache and Solr on Windows
Alessandro Pilotti
 
PHP and FastCGI Performance Optimizations
PHP and FastCGI Performance OptimizationsPHP and FastCGI Performance Optimizations
PHP and FastCGI Performance Optimizations
Alessandro Pilotti
 
Managing Drupal on Windows with Drush
Managing Drupal on Windows with DrushManaging Drupal on Windows with Drush
Managing Drupal on Windows with Drush
Alessandro Pilotti
 
Building drupal web farms with IIS - part 1
Building drupal web farms with IIS - part 1Building drupal web farms with IIS - part 1
Building drupal web farms with IIS - part 1
Alessandro Pilotti
 
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
Building modern web sites with ASP .Net Web API, WebSockets and RSignalBuilding modern web sites with ASP .Net Web API, WebSockets and RSignal
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
Alessandro Pilotti
 
Ad

Recently uploaded (20)

HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-UmgebungenHCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
HCL Nomad Web – Best Practices und Verwaltung von Multiuser-Umgebungen
panagenda
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded DevelopersLinux Support for SMARC: How Toradex Empowers Embedded Developers
Linux Support for SMARC: How Toradex Empowers Embedded Developers
Toradex
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
AI EngineHost Review: Revolutionary USA Datacenter-Based Hosting with NVIDIA ...
SOFTTECHHUB
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
Electronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploitElectronic_Mail_Attacks-1-35.pdf by xploit
Electronic_Mail_Attacks-1-35.pdf by xploit
niftliyevhuseyn
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager APIUiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPath Community Berlin: Orchestrator API, Swagger, and Test Manager API
UiPathCommunity
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
AI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global TrendsAI and Data Privacy in 2025: Global Trends
AI and Data Privacy in 2025: Global Trends
InData Labs
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
Semantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AISemantic Cultivators : The Critical Future Role to Enable AI
Semantic Cultivators : The Critical Future Role to Enable AI
artmondano
 

Windows Loves drupal

  • 1. Windows Drupal Alessandro Pilotti @alexpilotti MVP ASP.NET / IIS Windows Azure Insider MCSD, MCAD, MCSE, MCDBA, MCT Red Hat Certified Engineer
  • 2. Some Facts About the Windows OS  Based on Windows NT, released in July 1993  Hardware independent OS  POSIX subsystem  Provides excellent command line tools  PowerShell  Excellent security model  Server Core option for minimal GUI and footprint
  • 3. Windows and IIS Product Name OS Version IIS Release Windows XP 5.1 5.1 08/01 Windows Server 2003 5.2 6.0 03/03 Windows Vista 6.0 (Build 6000) 7.0 01/07 Windows Server 2008 6.0 (Build 6001) 7.0 03/08 Windows 7 6.1 7.5 07/09 Windows Server 2008 6.1 7.5 07/09 R2 Windows 8 6.2 8.0 ? Windows Server 2012 6.2 8.0 ?
  • 4. IIS 6  Kernel level component (http.sys) listens to HTTP requests  HUGE performance improvement over IIS 5  All user code runs in separate processes  Worker Process (w3wp.exe)  Crashes in worker processes don’t affect the stability of the service  Web gardens  Multiple WP per single web applications  Configuration stored in a XML metabase  MetaBase.Xml  MBSchema.Xml
  • 5. IIS 7.x / 8.0  Complete redesign over IIS 6.0  Modular design  http.sys is still part of the architecture  Improved remote administration and delegation  Enhanced command line and scripting tools  Including PowerShell cmdlets  Flexible model not limited to HTTP  Tight integration with WCF
  • 6. Security  Windows is a very secure OS!  Running Internet Explorer as administrator and getting malware does not mean that the system is flawed  RunAs permits to execute processes as different users  Windows Server 2008 introduced some unique security features  Windows Firewall  Since Windows Server 2008:  Address space layout randomization (ASLR)  Network Access Protection (NAP)
  • 7. Comparing PHP Stacks  Linux + Apache + MySQL + PHP  Windows + Apache + MySQL + PHP  Windows + IIS + MySQL + PHP  Windows + IIS + MS SQL Server + PHP
  • 8. Linux + Apache + MySQL + PHP  Pros  Most known and deployed stack in OSS world  Linux is a highly configurable operating system  Most Linux distributions can easily be configured for Apache, MySQL and PHP (yum / apt-get / etc)  Apache is a highly modular and scalable web server  Lots of documentation available  Tightly integrated update process (yum / apt-get)  Cons  Lack of simple configuration tools  Configuration requires a wide knowledge  Deployment differences between distributions
  • 9. Windows + Apache + MySQL + PHP  Pros  Most of the components are shared with the LAMP stack  Suitable for solutions that require integration with both Apache modules (e.g. mod_rewrite) and Windows  Until FastCGI for IIS showed up, undoubtfully the best PHP stack on Windows  Tools like XAMPP provide an easy deployment option  http://en.wikipedia.org/wiki/Comparison_of_WAMPs  Cons  Performance  Limited documentation and examples  Limited integration in the Windows ecosystem  Heterogeneous scenario for security updates
  • 10. Windows + IIS + MySQL + PHP  Pros  Performance (FastCGI and WinCache)  Tightly integrated in the IIS 7.x ecosystem  Easy to configure an deploy via WebPI  Easy to manage via IIS Manager  Easy to script via WebDeploy and Powershell  Cons  Web apps requiring integration with Apache modules need to be reviewed
  • 11. MySQL and Microsoft SQL Server  Using PHP Data Objects PDO eases portability issues  SQL Server is a choice to evaluate in scenarios that require high availability  PHP Drivers for SQL Server 3.0 just released!  Drupal + SQL Server through Commerce Guys module
  • 12. PHP on Windows  COM integration  Simplest way to access OS native 3rd party features  Marshaling performance is not brilliant (IDispatch / late binding)  .NET integration (experimental)  W32Api (experimental)  Register / Invoke API functions  Be careful with the parameters on the stack  win32service  start/stop/register/unregister services  Note: flock() has a slightly different behavior on Windows
  • 13. IIS 7 Modules  Individual features used to process a request  Executed in a pipeline  Native  OS specific binaries (e.g. written in C++)  More performant  Managed  .NET assemblies, executed by the .NET CLR  More secure and manageable
  • 14. Windows Server 2012 - SNI  Windows Server 2012 introduces some important features  Huge performance improvements for multi-tenant!  Server Name Indication (SNI)  Assign different X509 certificates to different host headers  Requires IE >= 7.0, Chrome >= 6.0, FF >= 2.0, SafariMobile >= 5.0  Non supported in IE on Windows XP (even on IE 9)!
  • 15. CPU Throttling  CPU resource pooling is a problem in IIS 7.x  Processes exceeding their quota get killed, not throttled  Lots of errors in user applications  Not suitable for multitenant scenarios  This feature required specific kernel support
  • 16. Windows Server 2012 CPU Throttling
  • 17. WebPI  Microsoft Web Platform Installer (WebPI) is a free tool that simplifies deployment of web solutions  IIS features and extensions  WinCache, PHP Drivers for SQL Server, PHP Manager  Frameworks  PHP 5.2 / 5.3, .Net, etc  Web applications  Drupal, Joomla, Wordpress, DotNetNuke, Orchard, etc  Database  MS SQL Server Express, MySQL, etc  WebMatrix  WebMatrix 2 RC available!
  • 18. Drupal via WebPI  Fastest way to setup Drupal on IIS  Takes care of all the steps  Deploy of Drupal (6.x or 7.x)  Dependencies  PHP, IIS: CGI, URL Rewrite, VC9, WinCache, etc  File permissions  Database creation
  • 19. Windows Cache Extension for PHP  Open source project developed by Microsoft  IIS Specific accelerator  Requires PHP 5.2 or 5.3 x86  Non thread safe version  Provides features not available in APC and other accelerators  Current version: 1.1
  • 20. Drush 5.x  A command line shell and scripting interface  Written in PHP  MS SQL Server is supported  Windows setup available on http://drush.ws/drush_windows_installer  Takes care of all required dependencies  Requires elevation
  • 21. Drush aliases  Create a file aliases.drushrc.php in %UserProfile%.drush $aliases[’drupal7'] = array( 'root' => '/path/to/drupal', 'uri' => 'dev.mydrupalsite.com', 'os' => 'Windows', 'remote-user' => 'Administrator', 'winrs-password' => 'Passw0rd', 'remote-host' => 'DrupalWeb1' );
  • 22. Server Farm  IIS extensions:  Application request Routing (ARR)  Web Farm Framework (WFF)  You can enable independently  Load balancing and caching  Server farm provisioning  Platform / applications
  • 23. WebDeploy  Web Application Packaging  Application or site, including DBs  Sources and destinations can be  Live servers  Zip files  Deployment  Administrative rights not required  Integration with VMSVC for remote deployment  IIS server synchronization  Entire server / site / application  Differential  Detects missing dependencies
  • 24. http://www.microsoft.com/web/websitespark/  Software  Production licenses for self hosting: Windows Web Server 2008 R2; SQL Server 2008 Web Edition and development tools  Azure  WebsiteSpark members get up to $1400* in annual Windows Azure resources  Training  Free online training and access to the MSDN developer community and resources  Support  2 professional support incidents  Criteria  An individual or a company with < than 10 employees engaged in website design & development  Check out also BizSpark for startups  http://www.microsoft.com/bizspark/
  • 25. Resources http://groups.drupal.org/drupal-windows http://channel9.msdn.com/Series/PHP-at-Scale-on-the-Microsoft-Platform Free Webcasts!  Deploying Drupal on IIS with Web Platform Installer (WebPI)  Deploying Drupal on IIS without Web Platform Installer (WebPI)  Building a Drupal Web Farm with IIS and Application Request Routing (ARR) - Part 1  Building a Drupal Web Farm with IIS - Part 2  IIS URL Rewrite for PHP and Drupal  Web Deployment Tool (WebDeploy) for Drupal sites  Optimizing Drupal and PHP sites on IIS, including Profile Guided Optimization (PGO)  Optimizing Drupal in IIS with Memcache and Solr  Configuring and managing Drupal with SQL Server  Managing Drupal on the Windows Platform with Drush