Windows 取代Linux承载PHP应用程序的几大原因
1. .NET和PHP Web应用程序的统一Web服务器
企业客户由于一些原因,经常希望统一他们的Web平台。他们可能在收购后就对自身的Web平台进行统一,或者他们可能会减缓他们的Web向ASP.NET/IIS上迁移,并且可能会继续对现有的LAMP投资进行支持。他们可能会为同时需要PHP和ASP.NET支持的客户提供承载服务,也可能他们会尝试使用.NET开发一个Web服务或组件,并且必须与他们的PHP前台后台进行交互。不管因为什么原因,这些客户都需要同时承载.NET 和 PHP应用程序/服务,并且更希望在一个单一的Web服务器平台上运行。
与Linux不同,Windows Server对.NET和CGI应用程序的支持,与PHP一样好。这两种类型的应用程序运行在IIS中时,你将看到他们的高稳定性,这些都得益于健康监视、自动回收过程和Worker Process Activation Service (WAS)为所有IIS承载的应用程序提供的失败保护。我们还将看到这两种类型的应用程序在IIS上运行的高安全性,这得益于应用程序池把在IIS上并行运行的程序进行了隔离。同时,我们也将看到这两种类型的应用程序在IIS上运行的高性能,这得益于IIS提供的高级的动态缓存和动态压缩功能。最后,在Windows Server 2008中,IIS7有一个组件结构,和一个将 .NET完整整合到过程的HTTP管道。这就意味着,客户可以允许将现有的.NET服务(比如ASP.NET 成员身份)或者他们自己的内置在.NET中的对IIS的自定义扩展,应用在IIS上承载的这两种类型的应用程序。
2. 将Web和其他服务器管理的工作量统一到一个独立的管理平台
很多企业客户,统一的管理规范,就是他们IT部门一直以来所追求的目标。这些客户,可能由于很多的原因,把Windows Server应用于一些其他的服务器工作中:比如他们有用大型的活动目录部署,他们的企业网络可能是基于Windows的,或者他们可能更愿意使用Terminal Server远程访问危险的系统。不管他们今天是否已经使用Windows Server进行管理,向上面的列表中添加基于PHP的Web结构,可以仅为IT后台管理更加合理化而服务。
此外,与Linux不同,Windows Server还提供了比如Windows PowerShell, Server Manager 和 Windows Virtualization功能,这些功能可以更简单和有效的管理包括Web在内的所有工作。另外,这些用户可以看到基于Windows管理解决方案的更长远的好处,比如Microsoft Operations Manager 和 Forefront。过去,将他们的服务器统一成Windows并不可行,因为Windows并没有为他们的PHP应用程序提供稳定的可靠的承载容器。现在,Windows Server安装了FastCGI for IIS后,使拥有基于PHP的Web客户统一其IT平台的梦想成为了现实。
3. 使用相同的操作系统开发和部署Web应用程序
PHP与Linux联合得很好,但是75%PHP开发是在Windows上进行的。通常情况下,PHP开发人员是对PHP非常狂热,但对Linux比较中立。许多开发人员将应用程序部署到Linux上,仅仅是因为Linux平台是唯一能支持他们的应用程序的。现在,Windows Server可以提供给这些开发人员一个与他们更喜欢用的开发环境相同的承载环境。此外,Windows Server 2008和Windows Vista IIS7都已经安装了组件,所以开发人员可以在他们的客户端机器上获得同样的全部功能的Web服务器,并且可以在将他们的应用程序部署到其宿主之前进行项目的测试。最后,托管商现在可以通过更便宜的Windows Web Server 2008 SKU,为这些PHP开发人员提供能够负担得起的专门的承载宿主。
4.Windows中更好的Web平台管理
客户可以选择使用PHP去开发他们的Web应用程序,但是这并不意味着Apache/Linux是承载和管理这些应用程序的最佳选择。Windows Server 2008和IIS提供了更有助于管理所有的Web应用程序的功能,并且不管应用程序使用的是什么样的开发技术。
首先,和Apache不同,IIS7拥有一整套快速配置承载PHP应用程序的Web服务器的管理工具接口。IIS7还提供了丰富的可扩展的 GUI 管理工具,用于直观的展示所有Web服务器的设置。IIS7 配置以XML的形式存储在.config文件中,并且使用了易于解释和操作的clear-text。所有的IIS7的配置文件都可以在命令行中使用单独的程序AppCMD.exe进行读取和设置。所有的IIS配置文件都可以通过IIS7的WMI Provider或者.NET 管理 API,Microsoft.Web.Administration,使用VBScript 和 .NET进行编写代码。此外,一些开源的狂热者更喜欢在shell界面中进行编码,并且Windows PowerShell为自动化这些代码提供了终极的Shell环境。
其次,与Apache不同,使用IIS7,使用给PHP站点的所有者的安全的委托管理任务,管理员可以减轻他们的管理工作量。这些站点的所有者可以通过HTTPS协议远程连接到 IIS7服务器,并且在Windows XP或者Vista中,使用与管理员管理本地IIS7同样的GUI工具,来管理他们的站点。与Apache类似的是,这些开发人员可以通过安全的FTPS将他们的PHP应用程序发布到服务器中,并且通过贮存在应用程序目录中的Web.config文件为IIS重新进行配置。但是与Apache不同的是,管理员可以通过在共享的UNC文件中存储的Web服务器和Web应用程序配置信息,集中配置现有的Web场(Web farm)去承载PHP应用程序。IIS7提供了一个远程超级管理员/开发人员合作模型,用来部署和管理Web应用程序。
第三,不同于Apache,使用IIS7,管理员拥有强大的诊断能力,可以更快速的对PHP应用程序进行故障排除。IIS7的运行状态与控制 API暴露了所有的运行信息,比如执行了哪些HTTP请求,他们停在了执行过程中的哪个步骤,所有的信息全部都是实时的。IIS7提供了错误细节,它列出了(仅对本地服务器)所有的产生错误的信息和可能的解决方案。
第四,Apache不再是Web服务器的唯一标准组件。IIS7拥有全部超过45个标准组件,这些允许管理员使他们的Web结构更加合理,以使其拥有更好的性能,并且只需要安装他们需要的IIS组件,以使其安全。另外,, Windows Server 2008中的Server Core安装选项支持IIS7, FastCGI 和 PHP。这个功能允许管理员在最小的,无外设的服务器上承载他们的PHP应用程序。Linux不再对Windows拥有这个优势。
5. Windows Server提供了更强大和更有效的媒体服务
随着Rich Internet Applications的产生,商务希望通过在Web站点中整合更多的媒体,来改善他们的Web应用程序的用户体验。这个趋势,对于使用Microsoft Web技术的客户,和使用类似PHP的开源Web技术的客户来说,都是有意义的。这些客户需要一个友好的PHP媒体解决方案,这个方案要拥有强大的功能与合理的开销。使用Windows Media Services 2008, IIS7 and Silverlight,Windows Server不需要增加任何额外投入,就可以提供这个解决方案。
Microsoft的流式媒体服务,Windows Media Services 2008,是为Windows Server 2008提供的一个免费下载。直播和点播媒体流,目前在商业界还没有比Windows Media Services更好的解决方案,并且这个版本比之前的Windows Media Services 9的性能要提升2倍。Windows Media Services同时也提供强大的功能,比如内置的缓存/代理 插件程序,可以使配置企业级edge网络和互联网拓扑更加容易,并且,能够显著降低流媒体的缓冲时间的WMS的Advanced Fast Start 技术,能够使播放内容或者切换资源时,提供一个类似电视的观看体验。而且在Windows Media Services 2008上同样性能或者功能的流式媒体解决方案,在Linux上是收费的。
由于从Web服务器上的媒体的先进下载技术,IIS7现在通过IIS7 Media Pack将自己与Apache区别开来。这个适用于IIS7的免费下载版本,包含了一个比特率调节模型,它可以帮助我们显著的降低分发视频文件时所占用的带宽,这个技术会在分发媒体文件的时候,自动将配置好的下载速度调整到媒体分发时候的比特率。IIS7现在还提供了支持超过4GB文件的缓存,来改善高清文件的分发性能。
最后,PHP开发人员也可以使用Silverlight,Microsoft的一个也可以与PHP紧密结合的跨平台的浏览器插件,构建他们自己的丰富的客户端组件,去完善视频媒体。
6. Microsoft支持的解决方案
企业和中型的商务企业都需要一个软件提供商的高级支持,小的商务企业可能不需要。很多小型的商务企业之所以选择开源的PHP,是因为PHP是免费的,并且可以快速的开发。随着他们的业务不断发展,这些PHP应用程序将会突然达到临界状态。Microsoft为Windows Server, IIS以及IIS6 和 IIS7中的FastCGI提供了全方位的支持。客户可以依赖Microsoft对Microsoft FastCGI扩展提供的及时的帮助与服务,这些在开源界是不常见的。另外,Microsoft与它的企业合作伙伴也紧密合作,Zend,在企业级PHP工具、服务和支持领域的领军企业,确保客户在Windows上承载PHP应用程序的所有条件都已经具备。
附:
Windows Server 2008支持FastCGI,使PHP在IIS7中更快更稳定
.png)
支持FastCGI,使PHP在IIS7中更快更稳定
FastCGI允许IIS为PHP应用程序的多请求重用CGI进程;这个功能很引人注目,因为它能在不损失稳定性的基础上改善PHP在Windows上的性能。
主要优点:
- 所有应用程序使用同一台服务器
- 使结构更加合理
- 一切都可定制化
- 使您的站点更加快速
- 降低管理的复杂性
- 轻松发布
一台服务器,多个应用程序
由于IT经常是复杂,另类的环境,所以您需要一个能够通过统一、可靠的方式,支持多种不同平台的服务器。安装了IIS7的Windows Server 2008,现在提供了承载ASP.NET和PHP的企业级应用。您可以轻松的管理并行的多Web应用程序平台。
使结构更加合理
您希望只安装能够最大化提供性能和安全性的软件,去承载您的应用程序的。Windows Service 2008 现在允许使用合理的、无外设的Server Core 去承载PHP 应用程序,运行一个标准的Web Server ,使承载PHP 应用程序的安装更快更安全。
一切都可定制化
您拥有一个特殊结构的独一无二的Web 站点。IIS7 将通过可以再.NET 或者C/C++ 中定制的完整架构,来适应您的独一无二的需求。从添加新的配置和UI ,到实现定制的成员身份和登录,这项能力在这个级别上的扩展性是无限的。
使您的站点更加快速
一个网站的响应速度直接影响着最终用户的用户体验。IIS7 通过更强大的本地输出缓存来提升站点响应时间的速度。现在您可以灵活的缓存基于查询字符串或者HTTP 标头元素的所有静态和动态的响应。
降低管理复杂性
Web 基础架构可能是您公司业务的重要组成部分,但是您肯定不希望花很多的经历去管理它。Windows Server 2008 通过提供一整套Web 服务器管理工具和界面,帮助您节约时间和提高效率。此外,IIS7 还提供了委托访问配置,所以您可以通过团体共享管理来减轻IT 的瓶颈。
轻松发布
发布和配置您的站点,从来都不是一件容易的事。使用IIS7 ,您可以使用在站点内容目录中的XML 文件去配置您的站点。当需要发布的时候通过安全的FTP ,将您的应用程序通过SSL 加密,发布到Windows Server 2008 上。
.png)
"在IIS7上PHP应用程序不仅非常稳定而高效,而且非常安全。IIS7还提供了一套管理工具,这使得我们在管理大量站点和对用户的委托功能时,变得得心应手。这相当程度上减少了每个站点的实际成本。" ----------------Bert Van Pottelberghe,Hostbasket.com的产品经理
Windows Server 2008
|
Web 平台 特色& 能力一瞥
|
应用程序支持
|
• 多种应用程序架构的承载,包括:PHP, ASP, ASP.NET, Coldfusion
• Server Core 对PHP 的支持
• 全部暴露给.NET 服务和API 的HTTP 过程
• 使用应用程序池隔离和健康监视的安全过程模型
• 对静态和动态内容的本地输出缓存
• 使用查询字符串和HTTP 头参数来进行缓存
|
扩展性
|
• 超过45 个模型的组件结构
•.NET 和 C/C++ 的扩展API
• 扩展的XML 配置架构和GUI 管理工具
• 基于提供者(Provider )的membership ,认证和诊断
|
开发
|
• 通过安全FTP ,WebDAV 和FPSE 进行发布
• 基于文件的XML 配置,允许您轻松部署站点
• 为共享Web 农场配置(Shared Web farm Configuration )提供UNC 支持
|
管理
|
• 为故障排除提供运行时状态及控件API 、请求失败追踪
• 为非本机管理员提供委托的管理支持
• 远程管理者可以在Vista ,XP ,Windows Server 2003 上,通过HTTPS 进行站点配置
• Windows Powershell ,交互式的命令行和基于任务的脚本接口
|
媒体
|
• 相当于之前版本Windows Media Services 两倍的可扩展性
• Server Core 对媒体的支持
• 对企业edge 网络和互联网拓扑的缓存/ 代理 插件程序
• 先进的自动调节比特流下载功能
• 缓存支持大于4GB 的文件,对HD 内容文件的传送支持得以提升
• 多种比特率流,支持多种音频流和视频流
• 解码器的Live Streaming
|
系统要求
- 最低配置: 1GHz 处理器, 推荐配置: 2GHz, 最佳配置: 3GHz 或更快
注意: 如果安装基于Itanium的Windows Server 2008系统,那么需要Intel Itanium 2处理器
- 最小: 512MB 内存, 推荐: 1GB 内存, 最优: 2GB RAM (完全安装) 或者 1GB RAM (Server Core 安装) 或者更多
- 最大(32位 系统): 4GB (标准) 或者64GB (企业级和数据中心), 最大 (64位系统): 32GB (标准) 或者2TB (企业级, 数据中心, 和基于 Itanium的系统)
- 最低配置: 8GB 磁盘空间, 推荐配置: 40GB (完全安装) 或者 10GB (Server Core 安装), 最佳配置: 80GB (完全安装) 或者 40GB (Server Core 安装) 或者更多
注意:如果计算机有多余16GB的内存,将需要更多的磁盘空间用于分页,休眠和转储文件(dump files)
- DVD-ROM 驱动器
- Super VGA (800 x 600) 或高分辨率的显示器
- 键盘
- Microsoft 鼠标或者其他兼容性设备
相关推荐
Microsoft Web Platform Installer (Web PI) 是一款免费的工具,使用它可以方便地下载、安装 Microsoft Web 平台的最新组件(包括 Internet Information Services (IIS)、SQL Server Express、.NET Framework 和 ...
Microsoft Web Platform Installer(WPI)是微软推出的一款免费工具,旨在简化Web开发人员和系统管理员在Windows平台上部署和管理Web应用程序及其相关技术的过程。WPI 2.0 Beta是该工具的早期版本,提供了一种便捷的...
web平台安装程序是一个非常酷的产品是一个很小的下载管理程序 - 微软Web平台安装程序(Microsoft Web Platform Installer),它极大地简化了web服务器和web开发设施的安装和配置。它可在Windows XP, Vista, Windows ...
Web平台安装程序(Web Platform Installer,简称WPI)是一个由微软开发的工具,主要用于简化开发者和管理员在Windows操作系统上安装、更新和管理Web技术的过程。它集合了多种Web开发所需的组件,包括IIS(Internet ...
《Microsoft Windows XP Platform SDK》详解 Windows XP Platform SDK(软件开发工具包)是微软为开发者提供的一个关键资源,它包含了开发、调试以及测试Windows XP平台上应用程序所需的各种工具、库、文档和技术...
微软的Windows Azure Platform(现更名为Microsoft Azure)作为一款全面的云服务,提供了丰富的功能和服务,支持多种编程语言,包括PHP。本文将详细介绍Windows Azure Platform与PHP的集成方式以及如何利用这一组合...
《Microsoft Windows Azure Platform 白皮书》是微软发布的一份详细介绍其云计算平台的重要文献,旨在为读者揭示Windows Azure Platform的核心特性和应用场景。Windows Azure Platform是微软构建、部署和管理应用...
OpenDCP tools on windows platform.
Teaching interactive web platform - PHP教学互动平台构建(毕业设计项目)Teaching interactive web platform - PHP教学互动平台构建(毕业设计项目)Teaching interactive web platform - PHP教学互动平台构建(毕业...
rust-webplatform, Emscripten编译的JS应用程序的Rust 库 铁锈 webplatform一个 Rust 库,用于与emscripten一起访问 DOM 。注意:这个项目不再积极地开发。 有关在 asmjs/wasm中使用 Rust的积极开发项目,请参阅 ...
1,配置adb环境变量Android和path (如:变量名:Android 变量值:E:\Android\sdk\platform-tools;E:\Android\sdk\tools; 变量名:path 变量值: E:\Android\sdk\platform-tools;E:\Android\sdk\tools;) 2,在...
标题中的“TTS朗读软件调用Microsoft Speech Platform Runtime和Languages”指的是使用文本到语音(Text-to-Speech,简称TTS)技术的应用程序如何利用微软的语音平台运行时(Microsoft Speech Platform Runtime)...
"platform-tools-r25-windows.zip" 是Google为Windows操作系统提供的一个特定版本(r25)的平台工具包。这个zip文件包含了多个子版本的7z压缩文件,以及一个名为"r25readme.txt"的文本文件。 在这些子版本(如...
《Android SDK Platform Tools for Windows详解》 Android SDK Platform Tools是Android开发者不可或缺的工具集,它为Windows平台提供了与Android设备进行交互的各种命令行工具。在标题"platform-tools-r31.0.3-...
Web Platform Installer (WPI) 是一个由微软开发的强大工具,它为开发者提供了方便快捷的方式来安装、更新和管理与Web开发相关的各种组件。这个工具包含了IIS(Internet Information Services)、ASP.NET、SQL ...
在IT领域,特别是针对Web应用程序开发,Eclipse Web Tools Platform(WTP)作为一个强大的集成开发环境(IDE),为开发者提供了全面且深入的支持。本篇内容将深入解析如何使用Eclipse WTP进行Web应用程序开发,主要...
"xilinx usb platform cable II windows driver"是专为Xilinx USB Platform Cable II在Windows操作系统上运行而设计的驱动程序。它确保了电缆在Windows环境下能够正确识别并正常工作,使得用户能够利用Xilinx的开发...
这里我们关注的是"platform-tools_r22-windows.7z"这个压缩包,它包含了适用于Windows操作系统的Platform Tools版本22。在本文中,我们将详细探讨Platform Tools的各个组件、功能以及如何在Windows环境下安装和使用...
Docker on Windows by Elton Stoneman English | 14 July 2017 | ISBN: 1785281658 | 358 Pages | AZW3/EPUB/MOBI/PDF (conv) | 23.77 MB Key Features Start building applications as Docker images and running...
Angular 6 for Enterprise-Ready Web Applications follows a hands-on and minimalist approach demonstrating how to design and architect high quality apps. The first part of the book is about mastering ...