`

15个具有高度影响力的Apache开源项目

阅读更多
Apache还提供更为宽容的开源许可证。

下面是15个多年来非常重要的Apache项目,这些项目不仅对开源运动来说非常重要,对于与一般的技术世界来说也是非常重要的。

Cassandra

Cassandra数据库在大数据世界里被称为“可扩展的记录系统”,这是Cassandra公司的副总裁Jonathan Ellis说的。Apache是2008奶奶从Facebook接手了这个开源项目。不过后来Hadoop承担了数据分析,Cassandra则为应用提供数据仓库,在网上是可以高度扩展的。举例说,Netflix就运行着很多的Cassandra集群。

Cassandra可在普通的硬件或云基础设施上提供容错能力,可以跨多个数据中心复制数据。到今年7月,Cassandra 2.0将会包含对CAS(compare-and-set)功能的支持,在单一操作中综合读与更新;触发器支持,为响应更新不同表格而定义动作,进一步缩短请求延时。

Cordova

因为Apache在移动计算领域占据支配地位,Cordova为应用开发人员配备了API以便其访问本地功能。Cordova可以和诸如jQuery或Sencha Touch的UI框架一起使用,在iOS、Android、黑莓和Windows Phone上运行。

Cordova负责Apache的副总裁兼Adobe产品经理Brian Leroux说,这一项目源于PhoneGap,由Adobe收购的Nitobi开发。源代码贡献给了Apache。

“Apache Cordova是我们用来在HTML、CSS和JavaScript上开发应用的开源项目,PhoneGap是其发行版之一,”Leroux说。Apache计划7月发布Cordova 3.0,并提供使用该软件的一种模块化方法。

CouchDB

这个数据库软件的MapReduce查询使用JSON文档、JavaScript,API则使用HTTP协议。CouchDB的核心功能是其复制机制,该项目的一位长期贡献者Jan Lehnhardt称。

“这能让我们将任何CouchDB的实例与任何其他实例相互同步。每份数据副本皆可独立运行,所有变更皆可同步反馈给改组中的所有成员。”

CouchDB的复制功能可用于全球分发数据,或者分发至地理上最接近用户的所在。计划中其他改进还包括与BigCouch的集成,后者是CouchDB的一个容错集群版本。该数据库的JavaScript引擎将会升级至V8和Node.JS,已获得服务器脚本更大的灵活性。

Flex

由Adobe贡献的Flex是一个应用框架,充分利用了Adobe Flash丰富的互联网插件技术。开发人员可以为iOS、Android和黑莓平板OS开发应用,也可以开发桌面和浏览器应用。Apache目前正计划扩展Flex以支持HTML5,Apache Flex副总裁Alex Harui称。不过任何与HTML5相关的改进都有可能不再叫这一名称。

在解释Apache对Flex的HTML5改进时,Harui称,“我们希望它能在尽可能多的地方运行。”然而即将发布的Flex 4.10版预计不会出现太大的改进。

Geronimo

这个服务器运行环境集成开源项目包含了Tomcat、MyFaces和OpenJPA,可产生Java/OSGi运行环境。其最流行的发行版是Java EE 6应用服务器运行环境。

“Apache Geronimo是一个模块化、可编译的开源服务器运行环境,”Geronimo程序管理委员会Kevan Miller称。“下一次重要升级将是Java EE 7。”这一项目发源于2003年的Apache Incubator,随后逐渐演变为Apache的顶级项目。

Hadoop

这个项目是最近最为时髦的项目,并已成为大数据的同义词。Hadoop为分布式计算提供了一个操作系统。

Hadoop的一位主要贡献者Doug Cutting称,“假如你想要运行数万台电脑而不是一台电脑,那么Hadoop就能让你应付裕如。”Hadoop起源于2006年的Nutch Web软件。Cloudera、HortonWorks等厂商都在围绕Hadoop开发各种业务。未来的改进将包括安全性和可扩展性方面的提升。

Harmony

这款模块化的Java运行环境是Apache最具争议的项目之一,在Apache和接管了Java的Oracle之间引起了争论。

“Harmony的主要目标是创建一个自由而且开源的Java运行环境,”Apache的项目参与者Jim Jagielski称。“该项目由于Sun被收购而退役,然后是Oracle拒绝将所需要的TCK(技术兼容性工具包)授权给Apache,以便使 Harmony具有Java兼容性。”

Sun为了防止Harmony在移动平台上使用而强加了一个使用限制领域,Sun曾声称这会影响到Java ME的销售。不过Harmony已迫使Oracle接受了OpenJDK,而后者正是谷歌Android的一个核心组件。

HTTP Server

这一项目又叫“httpd”。“从很多方面来看,Apache httpd依然是Apache软件基金会的主要基石,”Jagileski说,他从1995年起就是该项目的一位提交者。“要说是Apache httpd导致了Web的流行、实用和无所不在,那是一点儿都不为过的。由于是免费的、开源的,并且完全符合标准的参考实施才使得Web成了普适的和无所不在的。”

Httpd的最新版2.4.4为云环境提供了改进的性能和适用性。“包括反向代理设置的动态重设、更快更高的内存效率请求处理、支持I/O异步、正在开发中的一组新的模块,以及动态内容处理等。”

Lucene

Lucene提供一个用Java编写的文本引擎搜索库。“Lucene的用户是那些需要为其应用增加搜索功能的人,”2006年起就是Lucene核心提交者的Simon Willnauer称。Twitter目前就在用Lucene。

Lucene 4.0是去年10月发布的,起着重新改写和支持用户自己用于确定数据结构如何编码的编解码器的工作。Willnauer认为,这使得一些专门的用例生效。 Lucen 4.1发表于今年1月,节省了磁盘空间,性能也有了提高。而预计在数月内发表的4.2版预计会重构搜索文档的doc值功能。

Maven

这个软件管理与综合工具用于管理构建、报表和文档。强调了Java开发环境。

“Maven的主要益处是更快速进行项目开发的方法,”从事Maven开发长达十年之久的Brett Porter称。

对Java项目的依赖关系管理对Maven来说也很关键,需要将各种不同的软件项目连接起来。它可以集成一些像Jenkins软件构件系统的工具。Maven的改进计划包括提升插件和加强日志记录功能。

OpenOffice

该项目是Oracle于2011年转给Apache的,此前OpenOffice应用套件一直是Sun的项目。它在Oracle管辖下进展混乱,与OpenOffice.org社区的很多成员都发生了冲突。

该套件共有6个个人生产力应用:字处理、电子表格、演示、绘画、公式编辑器和数据库。2012年,Apache发表了两个版本,增加了矢量图形、扩展语言支持、性能改进和漏洞修复等。Apache OpenOffice副总裁Andrea Pesecetti称,计划今年4月发表4.0版。该版本将提供一个更为时尚的GUI、对微软Word文件的互操作性改进、更好的禁止个人可访问功能以及其他性能改进等。自2012年5月以来,OpenOffice 3.4版已被下载超过3500万次。

Pig

Pig常用于分析大型数据集,为数据分析算法配备了并行和高级语言。开发人员在使用Hadoop时可使用Pig而不必编写Java代码。

该项目的提交者Daniel Dai称,“你可以认为Pig是在Hadoop之上的一个抽象层。”Pig之所以如此命名,是因为它具备吃掉所有数据的能力。“它可以消化掉所有种类的数据。”

用户可以构建自己的特殊处理功能。即将发表的Pig 11.0将会呈现很多性能增强和操作者立方,用于计算多维度聚合和排名等。Pig开发人员希望Pig最终能摆脱对Hadoop的依赖,但是到目前为止,它还得依赖Hadoop。

Struts

Struts是构建Java Web应用的框架。最初是作为Apache Jakarta的子项目出现的,2005年独立剥离出来。

“Apache Struts项目提供构建所谓基于动作的Java Web应用的框架解决方案,这和基于组件的解决方案如JSF或Apache Wicket相反,”Apache Struts副总裁Rene Gielen说。

Gielen称,在JavaServer Faces出现之前,版本1是构建Java Web应用的事实标准。Struts 2“是一个轻量级、精致的和高度解耦的基于动作的Web框架,虽然是在Struts 1所引进的基本原则上构建的,但没有继承其前一版本的任何一行代码。”该项目的下一次重大重新设计预计不久就会面世。

Subversion

Subversion是CollabNet在2000年创立的。这个版本控制系统目前正在与Git争夺开发人员的注意力,不过Subversion副总裁Greg Stein并不认为这两者在进行决斗。

“这并非一场战争。版本控制系统只是工具,开发团体会选择最适合于他们的工具。拥有多种选择才是合乎情理的。”

“它的集中式知识库、简单设置、访问控制、庞大的知识库规模和种类繁多的客户端等,都深受众多企业的青睐。Subversion是商界最受欢迎的、利润巨大的版本控制系统,”Stein说。

即将发表的Version 1.8将针对文件和目录迁移提供客户端改进。它还将提供经过改进的融合、可继承的和服务器定义的各种属性。

Tomcat

这是Java Servlet和JavaServer Pages技术的实现,是Apache从1999年就启动了的资深项目。Tomcat是高效的Java应用服务器,并且已衍生了一些商业产品,如Mulesoft的Tcat Server,和VMware vFabric tc Server。还有Apache TomEE,这基本上是Tomcat的Java EE 6 Web Profile版本。Tomcat 8计划将包含对Servlet 3.1标准的支持。
分享到:
评论

相关推荐

    开源项目-apache-arrow.zip

    对于贡献者而言,这个开源项目提供了参与社区、提交代码和推动Apache Arrow发展的机会,有助于个人技能的提升和影响力的增长。 总之,Apache Arrow的Go语言实现对列表类型的支持是大数据处理领域的一个重要进展,它...

    ChatGPT杀疯了!盘点10个令人惊艳的AI开源项目

    描述中提到的“盘点10个令人惊艳的AI开源项目”,意味着我们将探讨的是那些对社区产生深远影响,并且具有高度创新性的项目。这些项目通常涵盖机器学习、计算机视觉、自然语言处理、深度学习等多个方向,它们为开发者...

    开源项目-meehow-wcurl.zip

    通过参与开源社区,用户不仅能获得免费的软件,还可以参与到软件的改进和发展过程中,增强自己的技能和影响力。 总的来说,meehow-wcurl是一个实用的工具,它将cURL的强大功能和jQuery的易用性相结合,为开发者提供...

    百度对开源的思考和策略以及进展.pdf

    在这一年,百度在引入开源上更加规范化,对外开源项目遵守开源惯例,采用Apache V2 License,并与多个开源基金会建立了紧密的合作关系,成为Linux Foundation、Hyperledger、CNCF基金会、LFDeepLearning等基金会的...

    apache-cxf-3.1.18.zip

    CXF这个名字来源于两个项目的合并:XFire和Celtix,两者都是早期在Web Services领域具有影响力的框架。 在“apache-cxf-3.1.18.zip”这个压缩包中,我们获取的是Apache CXF 3.1.18版本的源码、库文件和其他相关资源...

    开源软件,你用了么?——您是如何看待开源软件的?您所在公司是否有使用开源软件(如Linux)?.pdf

    5. 开源软件对企业的影响:开源软件对企业的影响非常大,它可以帮助企业降低成本、提高效率、增强竞争力等。 6. 企业对开源软件的看法:通过调查,我们可以看到,许多企业已经开始使用开源软件,并且对其进行了高度...

    开源软件与AWS云服务概述.pdf

    在开源软件的历史发展中,1970年代到2000年代见证了多个关键节点,例如1974年的UNIX,1983年的GNU项目,1984年的Linux内核,1998年的开源倡议(OSI)成立,以及1998年和2000年代初的Apache HTTP Server和MySQL等项目...

    WordPress获得Bossie Awards最佳开源应用.docx

    该奖项不仅关注软件的技术创新性和实用性,同时也考虑到了社区贡献度及项目整体的影响力。 #### 二、WordPress简介与成就 WordPress是一款基于PHP和MySQL构建的开源内容管理系统(CMS),由Matt Mullenweg和Mike ...

    Apache优化全面详细教程

    对于那些需要高度定制化的环境,重新编译Apache可以实现更加精确的配置。以下是一些关键步骤和建议: 1. **选择合适的版本**:确保选择最新稳定版本的Apache。 2. **下载源码包**:从官方网站下载最新的源码包。 3....

    让Apache Shiro保护你的应用

    随着其成为Apache软件基金会的顶级项目以来,Shiro的使用量和影响力持续增长。很多知名的开源框架和技术也在积极集成Shiro,如Spring、Grails、Wicket等。 综上所述,**Apache Shiro**凭借其全面的安全功能、优秀的...

    开源MQ技术介绍

    3. **ActiveMQ**:Apache下的一个高度活跃的项目,支持多种消息协议,如STOMP、AMQP等。 4. **Apollo**:阿里巴巴的一款分布式配置中心,虽然不是专门的消息队列,但具有一定的消息通知功能。 5. **Kafka**:一个...

    【2018】商派SHOP_B2C 485最新开源版

    商派(ShopEx)作为国内知名的电商解决方案提供商,其产品在业界具有较高的知名度和影响力。 该开源版系统的核心特点包括: 1. **灵活性**:商派SHOP_B2C 485提供了丰富的功能模块,可以根据商家的实际需求进行...

    janusgraph,janusgraph:一个开源的分布式图形数据库.zip

    例如,可以使用Spark进行大规模的图分析任务,如社区检测、影响力传播或路径发现。 为了确保高可用性和数据一致性,JanusGraph提供了复制和分片策略。复制可以通过在多个节点上保存数据副本来提高容错性,而分片则...

    Apache 管理员手册

    Apache服务器是全球最广泛使用的Web服务器软件之一,它开源、免费且高度可配置,因此深受开发者和管理员喜爱。本手册将深入探讨Apache的管理和配置,帮助你成为一名精通Apache的管理员。 1. **Apache基础概念** - ...

    soft_Apache v2.2.9 for Linux.zip.zip

    【标题】"soft_Apache v2.2.9 for Linux.zip.zip" 指的是一款针对Linux操作系统的Apache HTTP服务器软件的压缩包文件。Apache HTTP服务器是全球...它在Linux平台上的广泛使用,体现了开源软件在IT领域的影响力和价值。

    Apache_RocketMQ_2018_Meetup_杭州.pdf

    2017年9月25日,Apache RocketMQ正式晋升为Apache顶级项目,标志着其在开源社区中的影响力和成熟度得到了广泛认可。RocketMQ最初由阿里巴巴开发并贡献给开源社区,现在已经成为全球互联网行业广泛采用的消息队列解决...

    Sela Java Blogs-开源

    这种经验对于新手开发者来说,是一种宝贵的教育资源,他们可以学习到如何在实际项目中应用Java技术,如何与其他开发者有效沟通,以及如何在开源社区中建立自己的影响力。 总结起来,"Sela Java Blogs"开源项目代表...

    一款轻量地可定制信息栏小组件.zip

    5. **开源许可证**:了解开源软件的许可证类型,如MIT、Apache 2.0等,以确保正确使用和分发这个开源项目,尊重作者的权益。 6. **SwiftUI**:虽然描述中没有明确提及,但随着SwiftUI的推出,开发者可能还会接触到...

    MaxCompute对开源系统的支持与融合.pdf

    MaxCompute是阿里巴巴自主研发的大数据计算平台,其2.0版本对开源系统提供了广泛...通过这样的设计,MaxCompute2.0不仅能够满足企业大数据处理的需求,同时也能够在开源领域内发挥其影响力,推动开源技术的发展和应用。

    apache流量控制

    Apache是一款广泛使用的开源Web服务器软件,它提供了丰富的功能和高度的可定制性。对于需要控制网站流量的情况,Apache提供了多种方法来实现这一目标。其中一种有效的方法就是使用第三方模块——`mod_cband`。该模块...

Global site tag (gtag.js) - Google Analytics