PHP 也要做 Windows 平台的一等公民

  • 王翔

2007 年 10 月 15 日

话题:Web框架PHP架构DevOps语言 & 开发

虽然 PHP 已经被众多大型网站采用,但 Windows 平台似乎总是给它“二等公民”的待遇,这突出体现在 PHP 代码在 Windows 平台的执行效率上。不过面对 Java、Ruby 和 Flash 社区的压力,微软将在即将发布的 Windows Server 2008 中提供用于 IIS 7 的免费模块——FastCGI,该模将帮助 PHP 提升为 Windows 平台的“一等公民”。

近期召开的 Zend Conference上,该公司公布了一系列吸引 Windows 平台开发人员的利好消息,其中 PHP 在 Windows 平台执行效率会有较大提升的消息格外引人注目。Zend 与微软合作的成果是一个叫 FastCGI 的 IIS 模块,虽然之前 Zend 之前曾经自己开发过一个同名的模块,但由于没有操作系统底层机制的支持,该模块很快成为历史。随着 Flash 和 J2EE 的快速发展,PHP 与 ASP.NET 理智地走到一起,通过此次合作 Zend 获得了来自微软提供的面向 IIS 6、IIS 7、SQL Server 2005 和 SQL Server 2008 的专用扩展,而微软也得到了 PHP 对 ASP.NET、CardSpace(.NET 3.0+ 提供的身份机制)的互操作支持。

之前为了充分招揽开发团队,PHP 对 Linux 平台作了专门的定制,同时由于“开源”的优势,它获得了 IBM 和 Oracle 的支持,其中 Zend Studio for Eclipse 将会在 Eclipse 框架下,借助相关的开源产品形成 PHP 的全开发生命期的支持。由于与 Web 的密切关系,为了进一步适应 SOA 环境的需要,Zend 也致力于自己 Zend Framework 的开发,虽然 Zend 声称该产品是对.NET Framework 和 Java EE 的有利回应,但它还需要依赖 IBM、Google 和微软的支持,毕竟相关 Web Service 标准中 IBM 和微软的势力还是最大的,而 Google API 则代表着下一轮面向 Web 架构(WOA)的趋势。

在数据库支持方面,PHP 与 MySQL 的融合一直很默契,但考虑到主流商用数据库的市场份额,为了能适应企业环境的开发,PHP 曾经与 Oracle、DB2 多次进行了阶段性合作,对上述三个数据库提供比较全面的支持。但对于 SQL Server 2005 而言,PHP 一直只能算是编外,在连通性方面不仅与 Native 的 ASP.NET 有很大差别,与 Java 也有很大差距,考虑到 PHP 开发团队绝大部分在 Windows 平台工作,而且 SQL Server 普遍存在于各种规模的公司,相对 MySQL、Oracle、DB2 而言 SQL Server 2005 对于中小型规模项目有比较“中庸”的优势,因此此次 Zend 与微软合作的另一个重点就是 SQL Server 2005(以及即将发布的 SQL Server 2008)。

此外,此次会议上 Zend 还公布了下一版本 PHP 计划要发布的新特性,包括命名空间(Namespace)和国际化支持(Internationalization),这些都会让 PHP 向一个更“程序员”化的语言发展。

Web框架PHP架构DevOps语言 & 开发