微软执行官:Apache就是比较好

ZDNet软件频道 时间:2005-07-19 作者:吴端辉  |  我要评论()
本文关键词:吴端辉  apache
大家很清楚 Apache 大概是微软最头痛的对象之一。非常有趣的,微软执行长 Steve Ballmer 竟然在奥地利公开 承认 :「这是我们自己的错,如果我们不能提供足够的特点配上我们服务器软件的价位。
大家很清楚 apache 大概是微软最头痛的对象之一。非常有趣的,微软执行长 Steve Ballmer 竟然在奥地利公开 承认 :「这是我们自己的错,如果我们不能提供足够的特点配上我们服务器软件的价位。当谈到在同一个服务器上同时提供数个网站时, apache 就是比较好!( apache is simply better )。」,那微软自家的 IIS 呢?有了这句话,一切尽在不言中。

apache 人气节节上升

其实在 Linux (或其它 UNIX-Like 的 OS 中),有好几个不错的网页服务器,如 apache 、 Zeus 、 Netscape ( SunONE )、 Notes/Domino… 等。其中, apache 最受外界瞩目。

apache 最早是美国伊利诺大学里国家超级电算应用中心( NCSA )的 Rob McCool 开发出来的,当初取这个名字以尊崇印地安人的高超战技与坚忍不拔的毅力。 Rob1994 年离开 NCSA 后,由 8 位热心的 apache Group 成员继续维护,之后又正式成立了 apache Software Foundation 。 apache 是目前市占率最高的网页服务器。

目前几乎所有的商用 Linux 操作系统已事先内建( bundle )了 apache ,当然使用者也可自行下载 原始程序 ,然后自行编译再进行安装。

如果选择自行编译并安装,初学者最常碰到的问题就是跟原有的档案搞混,而得出一些莫名其妙的结果。建议在编译时,特别小心路径处理,或者干脆先把原有的 apache 移除掉(如 rpm -e apache ),再编译 apache 程序。

模块化设计与开放

我个人认为, apache 最棒的地方在于其模块化设计与开放,这具体表现在几个方面:

· 效能

apache1.3 时,原始程序是由 25,000 个 C 程序组成。由于公开原始码,许多人贡献心力帮忙程序除错,而使该软件达至最佳化,因而效能表现特佳,也十分稳定。另一项好处是使用者可选择自已需要的模块再行编译,用不上的可不用编译或挂载,如此一来, apache 执行效能可获得进一不的提升。例如,使用者可在 httpd.conf 档案中设定,决定使用 mod_php 、 mod_perl ,或是 mod_SSL 等模块。

· 安全性

在密码认证支持方面, apache 内建 Basic 、 Digest 两种选择。密码储存部分, apache 也早已支持 LDAP 、 MySQL 及 PostgreSQL 等,也允许使用者自行撰写密码认证的模块。

· 网址自动检查拼字

网友常常打了一长串的网址( URL )后只因少一个字;或多了一个字,或者是大小写搞错,结果经常找不到网页。 apache 有一个很棒的功能就是可以自动检查拼字。不过,使用者必须手动启动( speling_module )。

· 自行修改核心

我曾经遇一家客户,这家公司的首页不是一个静态的网页,而是一个用 C 写的 CGI 程序,每次有人浏览这个网站时,可想而知的,该 CGI 程序就得自数据库抓取一堆数据。该网站经常当机,问题其实在于该 CGI 程序的负担太重,却又不愿意放弃这个功能。

后来,我们协助这家公司将该 CGI 功能移至 apache 的核心模块之一( mod_perl )后,发现执行速度快了十多倍,而且当机频率也大幅降低。举例来说,当你使用数据库中内建的 MAX 函式,绝对会比自己另外写程序来找出最大值快得许多。

还有另一个案例是我们帮忙一家客户在 mod_perl 模块中整合某一个程序,将一个目录中提供下载的档案,全部都自动压缩成 zip 档案,以大幅减少客户下载的时间。其实,可以在 apache 上发挥创意的地方太多,这只是其中一例。反观这些应用,在没有开放原始码的 IIS 中,是非常难以达成的。

· 内建 Proxy 功能

apache 也有内建的 Proxy 功能,您可以自动启动相关模块( proxy_module )。


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134