Apache:不是只有Web服务器

ZDNet软件频道 时间:2002-10-08 作者:BUILDER.COM |  我要评论()
本文关键词:
本文介绍了Apache软件基金会(Apache Software Foundation)的主要工程项目,使大家对开放源代码的项目有总体的认识。
多数人在听到“Apache”这个词的时候首先想到的是Apache Web服务器,或者叫做“Apache全球网服务器软件”。但是Apache软件基金会(Apache Software Foundation)有很多项目,这些项目就和它的旗舰――Web服务器一样有趣。Apache所支持的核心技术集中于JavaXML,而贡献者名单上则包括了SunIBMSOAP工具)。

Apache软件的起源

Apache软件基金会于1999年启动了好几个XML和Java项目,同时Roy T. Fielding将这个组织重组成了一家非盈利性机构。Apache通过支持标准语言,如Perl,PHP(一个Apache的项目),以及最近的Java,来鼓励开发人员使用它的软件。尽管Apache软件基金会没有PHP子项目,但是很多用PHP编写的商业程序正在Apache的Web服务器顶端运行。

我目前正在使用许多Apache程序,因为它们是免费的,有详尽的文档,并具有足够的稳定性以移植到生产环境中。对于使用XML和Java的开发人员,来自Apache的项目是一个研究这些技术的好地方。最近的项目,包括Cocoon和Xindice项目,为开发人员提供了试用这些软件的机会,而不会受到商家的炒作和压力。

我已经试用过的Apache软件基金会的XML和Java项目主要包括以下这些:

  • PHP――PHP超文本预处理程序项目开发出了正在流行的PHP程序语言。
  • Jakarta/Tomcat――Jakarta(雅加达)项目包括许多子项目,而Tomcat(雄猫)项目则是中心项目。Tomcat是一个于用运行Java servlet和JSP页面的J2EE servlet引擎的参考工具。Tomcat 4.0实现了对J2EE上下文环境和数据源更好的支持。Tomcat有很多吸引人的地方――它所包含的内容刚好能满足J2EE的要求。
  • XercesXalan――这些项目包含了一个XML剖析器和Xpath引擎,这两者是设计用来实现XML的W3C标准的。这两个工具的Java版本和C++版本都已经出来了。Xerces当前的版本是2.0.2版。XML剖析器基本上都遵从同样的规则,所以使用微软XML组件的开发人员会发现Xerces/Xalan惊人的相似。
  • Axis――由IBM捐赠的Axis是一个SOAP Web服务工具。2.3版的基于Java的Axis是简单易懂的,而且可以和任何servlet外壳或者Java程序一起实现。Axis包括了命令行工具用以创建文件和Java代理客户。许多生产商会吹嘘他们的产品会如何简化Web服务,但是Axis的命令行工具做的就非常好。
  • Cocoon——这个项目是建立在Tomcat和Xerces顶端的基于XML的内容管理平台。Conoon曾因为一些问题而被Apache排除在外,但是在做过改写和从新定位之后,它还是值得一看的。Cocoon主要使用的是XML/XSLT,同时还带有一个从分散的来源集中数据的框架。
  • Xindice――随着基于XML的应用程序的增多,需要更好管理文档的愿望正在增强。Xindice使用了XML:DB标准(目前还不是W3C候选对象),用以维护XML文档的集合,这些文档能够使用Xpath被轻易检索到。
  • Jakarta/JamesJetSpeed――James是一个完全由Java写成的可伸缩e-mail服务器;JetSpeed是一个企业信息门户。James不支持IMAP4标准,但是肯定能处理POP3和SMTP。
支持W3C标准

W3C会公布任何和Web相关的标准。Apache在把自己的项目用作W3C标准参考的工作上做得很好。管理和项目研究人员总是为制定标准细则而努力,并讨论这些细则将如何影响用户。Apache的每个项目都有自己的邮件列表,许多都被归档放到了网上。

Apache项目的价值

所有的这些工具包都需要花时间来学习;幸运的是,大多数文档都是非常好的。如果你已经安装了几个Web服务器,并了解它们是如何工作的,那么Tomcat是很容安装的。Xindice的文档有点过时了,而Xerces和Xalan则需要对XML的了解。如果你从来都没有和XML打过交道,那么要想掌握Xerces将会需要大量的时间来研究,包括阅读文档,还可能要到W3C甚至是Sun去,以弄清和Java相关的问题。

在某些情况下,这种类型的阅读和探索很耗时间,但是会对核心技术问题有更好的理解。当然,你也可以快速修改一下附带的演示程序,并让所有的东西都工作得很好,这在Apache项目中是可能的(但是是不值得推荐的)。

由于在开发人员社区处于强大的领导地位,开放源代码的Apache软件是在不断改进的。生产商可以修改和增加源代码,然后重新打包,甚至将源代码随自己的应用程序一起卖掉。Macromedia从里到外都已经使用了Xerces和Axis,并把这两个项目作为它Jrun软件的标准组件。IBM也在这些技术上做了扩展,把它们包括进了WebSphere。所以Apache项目不愿意被归为纯开放源代码的软件;所以你很可能会碰到这些软件,甚至是在最保守的店子里。



本文为ZDNet China版权所有,未经许可严禁转载。

责任编辑:炒饭

欢迎评论或投稿


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