最近10年及下个10年Apache最有影响的项目

系统 Linux
本文将带你看看最近10年改变了计算机技术的Apache项目,以及未来10年可能影响最广泛的Apache项目。

Apache软件基金会(ASF)将在今年11月举办ApacheCon大会纪念10周岁生日,虽然是一个志愿者组织,但ASF已经帮助创建了好多支撑现代互联网的主要技术。本文将带你看看最近10年改变了计算机技术的Apache项目,以及未来10年可能影响最广泛的Apache项目。

最近10年最有影响力的Apache项目

1、Apache HTTP Server

Apache HTTP Server项目是为现代操作系统开发和维护的一个开源HTTP服务器,包括Windows、Unix和Linux操作系统平台,这个项目的目标是提供一个安全、高效、可扩展的服务器,提供遵循目前HTTP标准的HTTP服务。

自1996年4月开始,Apache就成为互联网上最流行的Web服务器。

用户:连续13年蝉联Web服务器使用量第一,为超过1.13亿网站服务。

图 1 Apache HTTP Server Logo

2、Apache Tomcat

Apache Tomcat是一款开源的Java Servlet和JavaServerPages容器,Java Servlet和JavaServerPages规范是由Java社区组织开发的,Apache Tomcat是一个开放的环境,基于Apache软件许可证发布,它是来自世界各地最优秀的开发人员协作工作的结晶。

用户:Tomcat已经帮助实现许多大规模,关键业务应用,如ETrade,沃尔玛,EMC等。

图 2 Tomcat Logo

3、Apache Lucene

Apache Lucene是一个完全用Java编写的高性能,功能完整的文本搜索引擎,它适合任何应用程序都需要的全文搜索,特别是跨平台的。最初使用Java创建的,Lucene已经被移植到其它编程语言,包括Delphi,Perl,C#,C++,Python,Ruby和PHP。

用户:苹果在线商店,CNET,Netfix,Wikipedia,Yelp,Comcast,LinkedIN,很多政府机构(FDA,DOD等),Technorati,AOL等。

图 3 Apache Lucene Logo

4、Apache Struts

Apache Struts是一个Java EE Web应用开发开源框架,它使用和扩展了Java Servlet API,鼓励开发人员采用模型-视图-控制器(MVC)架构。

Apache Struts项目提供了两个主要的Struts框架版本,Struts 1是公认的最流行的Java开发Web框架,它是解决一般问题的最佳解决方案。Struts 2最初叫做WebWork 2,它是对困难问题寻求简洁解决方案团队的最佳选择。

用户:美国国税局,波士顿环球报,大赦国际,希尔斯,阿拉莫租车服务,全国租车服务等。

图 4 Apache Struts Logo

#p#

5、Apache Geronimo

Geronimo项目的目标是产生一个服务器运行框架,汇集最好的开源代替品,创造满足开发人员和系统管理员需求的运行环境。该项目最流行的发布是经过认证的Java EE 5应用服务器。

用户:AMD,IBM,Virtuas等。

图 5 Apache Geronimo Logo

6、Apache Ant

Apache Ant是一个基于Java构建的自动化软件构件过程的工具,它和Make类似,但是它是使用Java语言实现的,需要Java平台,最适合于构建Java项目。

Ant和Make之间最大的不同是Ant使用XML描述构建过程和它的依赖,而Make使用Makefile文件。

用户:有很多著名的Java应用程序都是使用Ant来构建的,美国纽约使用Ant来管理美国最大的青年计划,每天更新超过25万明学生记录。

图 6 Apache Ant Logo

7、Apache Cocoon

Apache Cocoon是一个基于Spring的框架,主要推崇的是基于组件的开发,使得构建Web解决方案时,可以像搭积木一样将组件组装起来,不需要编程。

用户:Apache Lenya,Daisy CMS,Hippo CMS,Mindquarry等。通常用于数据仓库ETL(抽取,转换,加载)工具,或系统间传输数据的中间件。

图 7 Apache Cocoon Logo

8、Apache SpamAssassin

SpamAssassin是基于Apache许可2.0发布了一个Apache项目,用于过滤垃圾邮件,采用的是基于内容匹配的过滤规则。

SpamAssasion使用了各种垃圾邮件检测技术,包括基于DNS的和基于校验和,贝叶斯过滤,外部程序,黑名单和在线数据库的垃圾邮件检测机制。

SpamAssassin采用了广泛的本地和网络检测,以确定各种垃圾邮件签名,这使得垃圾邮件发生者很难伪造出可以逃过检测的垃圾邮件。

用户:SpamAssassin已经有成千上万的开发人员和独立用户使用,并成为了许多商业产品的基础。

图 8 Apache SpamAssassin Logo

9、Apache Axis

Apache Axis是一个遵从W3C简单对象访问协议(SOAP)的实现。Axis是Apache SOAP的后续项目。

用户:WSO2,IBM MuleSource,进步软件。

图 9 Apache Axis Logo

10、Apache Logging Services

Apache Logging Services项目创建和维护开源软件相关的应用程序行为日志,该项目的产品包括三个日志框架:用于Java的log4j,用于C++的log4cxx和用于Microsoft .NET的log4net框架。还包括一个日志查看和分析工具:Chainsaw。

Apache logging Services也赞助了log4php。

用户:Apache logging在Java开发中无处不在。

图 10 Apache Logging Services Logo

#p#

11、Apache Commons

Commons是一个重点关注可重用Java组件的Apache项目,Apache Commons项目由三部分组成:

Commons Proper:可重用的Jaba组件库

Commons Sandbox:Java组件开发工作区

Commons Dormant:一个沙盒组件库,目前还无效

用户:Amazon Web Service,Google

图 11 Apache Commons Logo

未来10年影响可能最大的Apache项目

1、Apache Hadoop

Apache Hadoop项目让开源软件高可靠,可扩展和分布式计算成为可能,它让应用程序在上千个节点上运行,数据可以达到PB级,它的设计灵感来自谷歌的MapReduce和谷歌文件系统(GFS)。

Hadoop现在是一个顶级Apache项目,正由分布在世界各地的社区构建和使用,Yahoo一直是该项目的最大贡献者,并在其网络搜索和广告业务中广泛使用了Hadoop,IBM和谷歌发起了一项重大倡议,希望大学的分布式计算机编程课程中使用Hadoop。

用户:Amazon A9,Adobe,NYTimes,Microsoft Bing,IBM,Hulu,Google,Facebook,Yahoo和Baidu。

图 12 Apache Hadoop Logo

2、Apache CouchDB

Apache CouchDB是一个面向文档的数据库,可以使用Javascript以MapReduce的风格查询和索引,CouchDB还提供了双向冲突检测,以及增量复制功能。

CouchDB是用ErLang编写的,ErLang是一门强大的构建分布式系统的理想编程语言,它允许灵活的设计,易于扩展。

用户:Amazon Web Services,IBM。

图 13 Apache CouchDB Logo

3、Apache Directory Server

Apache Directory项目提供了一个完全用Java编写的目录解决方案,包括一个目录服务器,它与轻量级目录访问协议(LDAP)V3兼容,一个机遇Eclipse的目录工具(Apache Directory Studio)。

除LDAP外,Apache Directory Server还支持Kerberos 5和Change Password协议。它设计有触发器,存储过程和视图。

用户:Atlassian,IBM,Oracle,Polycom,Red Hat,Sun,很多政府机构等。

图 14 Apache Directory Server Logo

4、Apache Maven

Maven是一个软件项目管理的综合工具,基于项目对象模型(POM)的概念,Maven可以管理项目的构建,报告和文档。

用户:Sonatype。

图 15 Apache Maven Logo

5、Apache Jackrabbit

Apache Jackrabbit是一个完全符合Java技术API的内容仓库实现,内容仓库是一个具有结构化、非结构化内容,支持全文搜索,版本控制,事务等的分层内容存储。

用户:Magnolia CMS,Hippo CMS,Nuxeo,OpenKM等。

图 16 Apache Jackrabbit Logo

#p#

6、Apache Harmony

Apache Harmony是Apache软件基金会的Java SE项目,该项目的目的是孵化一个对Java SE感兴趣的大型健康的社区。包括:

一个兼容的,独立实现的基于Apache许可证V2的Java SE 5 SDK。

一个社区开发的模块运行(VM和类库)架构。

用户:IBM,Eclipse和Google的Android SDK等。

图 17 Apache Harmony Logo

7、Apache ServiceMix

Apache ServiceMix是一个开源ESB(企业服务总线),结合了面向服务架构(SOA)和事件驱动架构(EDA)创建而成的一个敏捷的企业级ESB。

用户:Apache Geronimo,arctic.service.net,FUSE,联合投资等。

图 18 Apache ServiceMix Logo

8、Apache MINA

Apache MINA是一个为网络应用程序创建的多用途基础架构,帮助用户更容易地开发高性能,高可扩展想的为了应用程序。

用户:使用和案例请浏览http://mina.apache.org/testimonials.html

图 19 Apache MINA Logo

9、Apache Roller

Apache Roller是一个功能齐全,Java多用户群博客服务器,Roller是一个Java Web应用程序,应该可以在任何Java EE服务器和任何关系数据库上运行。目前,Roller在Tomcat和MySQL上的支持最好,但已有用户报告在Glassfish,WebSphere,JBoss,Resin,Geronimo,Derby,PostgreSQL,Oracle等上面成功运行。

用户:Apache Roller在Sun,IBM内部和外部员工博客,以及其它公司如JRoller.com Java博客社区上都有成功应用。

图 20 Apache Roller Logo

10、Apache Sling

Apache Sling是一个使用Java内容库如Apache Jackrabbit存储和管理内容的Web框架,Sling应用程序使用脚本或Java Servlet,基于简单命名规范进行选择,以REST方式执行HTTP请求。

用户:Idium(挪威网络托管服务商),Sakai 3,英国牛津大学,斯坦福大学,加州大学伯克莱分校,剑桥大学等。

图 21 Apache Sling Logo

【编辑推荐】

  1. Apache Camel 2.0.0正式发布 核心大重构
  2. 最简单的apache虚拟机故障
  3. Apache服务器漏洞引发小流量DoS攻击
责任编辑:赵宁宁 来源: 51CTO独家翻译
相关推荐

2014-08-21 13:32:05

2021-01-04 14:55:07

通信运营商疫情

2023-01-04 10:01:53

物联网IOT

2012-12-14 16:12:17

全球移动游戏开发者联盟

2009-01-07 11:52:44

VoIP融合预测

2011-04-15 10:38:31

程序员

2020-10-19 12:21:38

GoPython开发者

2009-04-10 21:28:08

2020-10-30 10:35:46

10大IT趋势

2021-02-20 07:23:32

Windows10操作系统微软

2010-06-24 16:47:42

思科

2023-01-05 08:22:41

HelloGitHu开源项目

2015-08-25 16:00:43

2018-01-08 08:38:00

2018-11-03 05:31:13

2020-10-18 12:01:52

编程语言JavaPython

2013-12-10 15:25:27

A10应用交付市场影响力

2017-03-27 23:44:18

DevOps持续交付IT

2018-11-21 14:30:52

GitHubJavaScript开源项目

2018-09-05 10:04:32

点赞
收藏

51CTO技术栈公众号