複製鏈接
請複製以下鏈接發送給好友

Apache軟件基金會

鎖定
Apache軟件基金會(也就是 Apache Software Foundation,簡稱 ASF),是專門為支持開源軟件項目而辦的一個非盈利性組織。在它所支持的 Apache 項目與子項目中,所發行的軟件產品都遵循 Apache 許可證(Apache License)。
中文名
Apache軟件基金會
外文名
Apache Software Foundation
簡    稱
ASF
正式創建
1999年7月

Apache軟件基金會基金會介紹

Apache軟件基金會(也就是Apache Software Foundation,簡稱為ASF),是專門為支持開源軟件項目而辦的一個非盈利性組織。在它所支持的Apache項目與子項目中,所發行的軟件產品都遵循Apache許可證(Apache License)。

Apache軟件基金會發展歷史

Apache軟件基金會正式創建於1999年7月,它的創建者是一個自稱為“Apache組織”的羣體。這個“Apache組織”在1999年以前就已經存在很長時間了,這個組織的開發愛好者們聚集在一起,在美國伊利諾伊斯大學國家超級計算機應用程序中心(National Center for Supercomputing Applications,簡稱為NCSA)開發的NCSA HTTPd服務器的基礎上開發與維護了一個叫Apache的HTTP服務器
最初NCSA HTTPd服務器是由Rob McCool開發出來的,但是它的最初開發者們逐漸對這個軟件失去了興趣,並轉移到了其他地方,造成了沒有人來對這個服務器軟件提供更多的技術支持。因為這個服務器的功能又如此強大,而代碼可以自由下載修改與發佈,當時這個服務器軟件的一些愛好者與用户開始自發起來,互相交流並分發自己修正後的軟件版本,並不斷改善其功能。為了更好進行溝通,Brian Behlendorf自己建立了一個郵件列表,把它作為這個羣體(或者社區)交流技術、維護軟件的一個媒介,把代碼重寫與維護的工作有效組織起來。這些開發者們逐漸地把他們這個羣體稱為“Apache組織”,把這個經過不斷修正並改善的服務器軟件命名為Apache服務器(Apache Server)。
這個命名是根據北美當地的一支印第安部落而來,這支部落以高超的軍事素養和超人的忍耐力著稱,19世紀後半期對侵佔他們領土的入侵者進行了反抗。為了對這支印第安部落表示敬仰之意,取該部落名稱(Apache)作為服務器名。但一提到這個命名,這裏還有流傳着一段有意思的故事。因為這個服務器是在NCSA HTTPd服務器的基礎之上,通過眾人努力,不斷地修正、打補丁(Patchy)的產物,被戲稱為“A Patchy Server”(一個補丁服務器)。在這裏,因為“A Patchy”與“Apache”是諧音,故最後正式命名為“Apache Server”。
後來由於商業需求的不斷擴大,以Apache HTTP服務器為中心,啓動了更多的與Apache項目並行的項目,比如mod perl、PHP、Java Apache等等。隨着時間的推移、形勢的變化,Apache軟件基金會的項目列表也不斷更新變化中——不斷的有新項目啓動,項目的中止以及項目的拆分與合併。比如一開始,Jakarta就是為了發展JAVA容器而啓動的Java Apache項目,後來由於昇陽公司(SUN)的建議,項目名稱變為Jakarta。但當時該項目的管理者也沒有想到Jakarta項目因為JAVA的火爆而發展到如今一個囊括了眾多基於JAVA語言開源軟件子項目的項目。以至後來,不得不把個別項目從Jakarta中獨立出來,成為Apache軟件基金會的頂級項目,Struts項目就是其中之一。
最近,為了避免SCO與UNIX開源社區之間的發生糾紛降臨在Apache軟件基金會(ASF)身上。Apache軟件基金會(ASF)裏面開始採取一些措施,讓眾多的項目進行更多協調的、結構化管理,並保護自己的合法利益,避免一些潛在的合乎法律的侵犯(potential legal attacks)。

Apache軟件基金會組織構成

理事會
理事會(Board of Directors)是管理與監督整個Apache軟件基金會(ASF)的商務與日常事務,並讓它們能符合章程的規定下正常地運作。
項目管理委員會
項目管理委員會(Project Management Committees,簡稱為PMC),主要負責保證一個或者多個開源社區的活動都能運轉良好
現任理事會
根據2010年7月Apache官方Blog消息,Apache 軟件基金會(ASF)宣佈:Shane Curcuru, Doug Cutting, Bertrand Delacretaz, Roy T. Fielding, Jim Jagielski, Sam Ruby, Noirin Shirley, Greg Stein和Henri Yandell當選新一屆ASF理事會成員。
Jim Jagielski
Jim Jagielski Jim Jagielski
ASF理事,Apache軟件基金會主席
Shane Curcuru
ASF理事,副主席 任職IBM
Doug Cutting
Shane Curcuru Shane Curcuru
Doug Cutting ASF理事,搜索引擎專家,任職Cloudera,Hadoop之父。
Bertrand Delacretaz
Bertrand Delacretaz Bertrand Delacretaz
ASF理事,任職DAY SOFTWARE的研發集團,他參與涉及的項目Apache Cocoon, FOP, Solr, Sling, Tika和ESME。
Roy T. Fielding
Roy T. Fielding Roy T. Fielding
ASF理事,美國著名科學家,HTTP規範的重要作者之一,現任職DAY SOFTWARE首席科學家。
Sam Ruby
Sam Ruby Sam Ruby
ASF理事,參與很多開源項目,ASF秘書兼法律事務副主席,W3C的HTML組織聯合創始人,現任職於IBM。
Noirin Shirley
Noirin Shirley Noirin Shirley
ASF唯一女性理事,負責會議的副主席。她任職Google
Greg Stein
Greg Stein Greg Stein
ASF理事,曾擔任ASF主席。
Henri Yandell
Henri Yandell Henri Yandell
ASF理事,Commons,Jakarta,Tomcat等項目維護者。 [1] 

Apache軟件基金會項目

HTTP Server: 可以在UNIX,MS-Windows,Macintosh和Netware操作系統下運行的HTTP服務器的項目
Ant: 基於Java語言的構建工具,類似於C語言的Make工具。
AXIS2:Web服務(SOAP, WSDL)的處理器,基於AXIS1.X重新構建。
APR:(也就是:Apache Portable Runtime)C語言實現的便攜運行庫管理工具
Beehive:為了簡單構建J2EE應用的對象模型
Cocoon:一個基於組件技術和XML和Web應用開發框架。
DB:關於數據庫管理系統的幾個開源項目集合
Derby:一個純JAVA的數據庫管理系統
Drill :將有助於Hadoop用户實現更快查詢海量數據集的目的 [2] 
Directory:基於JAVA語言的目錄服務器,支持LDAP目錄訪問協議
Excalibur:Apache Avalon項目的前身。
Forrest:一個發佈系統框架的項目。
Geronimo:J2EE服務器
Gump:整合管理
Hadoop:並行運算編程工具和分佈式文件系統
Harmony:一個兼容JAVA標準的JAVA語言的開源實現。
HiveMind:一個服務(Services)與配置(configuration)的微內核
iBATIS:一個基於JAVA語言的數據持久化框架
Incubator:為了幫助那些希望獲取Apache軟件基金會支持的計劃進入Apache軟件基金會的審核項目
Jackrabbit:內容倉庫API標準(Content Repository for Java Technology API,即JSR-170)的一個開源實現項目。
Jakarta: 在ASF中,基於Java語言的一組開源子項目的集合,現在包含的子項目有:BCEL,BSF,Cactus,Commons,ECS,HttpComponents,JCS,JMeter,ORO,Regexp,Slide,Taglibs,Turbine,Velocity
James:JAVA語言實現的郵件新聞服務器
Labs:為基金會成員提供最新變更的思維的計劃
Logging: 一個開發可以在C++、Java、Perl、PHP.NET計算機語言下運行的通用日誌工具項目集合。
Lucene: 高性能的,基於Java語言的全文檢索項目。
Maven:項目集成構建工具
MyFaces: 一個JavaServer Faces(JSF)的實現框架。
mod_perl:為Apache服務器提供Perl語言整合的項目
POI:提供API以供JAVA程式對Microsoft Office格式檔案的讀/寫。
Portals:與門户(Portal)技術相關的幾個項目集合
Santuario:發展XML安全性方面的項目
Shale:在Struts之後,發展起來基於JAVA語言Web應用框架
SkyWalking [3]  :基於微服務雲主機及容器架構的應用性能監測平台框架。 [4] 
SpamAssassin:垃圾郵件過濾器
Struts: 一個基於J2EE平台的MVC設計模式的Web應用框架
Subversion: 一個軟件版本管理系統。
Tapestry: 另一個J2EE平台的、能產生動態、高性能Web應用的框架。
TCL:為Apache服務器提供Tcl語言整合的項目
Tomcat: 一個運行Java Servlet與JavaServer PagesJSP)的容器。
Web Services:與Web Services技術相關的項目集合
Xalan:XML轉換處理器
Xerces: 一組可以在Java,C++,Perl計算機語言下使用的XML解析器項目。
Apache XML:XML解決方案
XMLBeans:基於JAVA語言XML對象綁定工具
XML Graphics:發展XML與圖形進行轉換的計劃項目 [5] 

Apache軟件基金會Apache技術

HTTP服務器
Apache HTTP服務器項目主要致力於為現代操作系統開發和維護開源的HTTP服務器,其中包括Unix和Windows NT。這個項目的主要目標是提供一個可以與當前的HTTP標準同步提供安全、高效和可擴展的服務器的HTTP服務。自1996年4月以來,Apache就變成了互聯網上最流行的Web服務器。
主要用户羣:連續13年,Apache HTTP服務器都是全球Web服務器的領軍者,為1.13億個網站提供服務。
Tomcat
Apache Tomcat是一個可以執行Java Servlet和JavaServer網頁技術的開源軟件。Apache和Tomcat是相對獨立的,用户可以通過Apache訪問Tomcat資源,反之亦然,二者可以在同一台服務器上。Apache Tomcat是由全世界各地的最佳開發者合力研發而來的,是一款非常優異的開源軟件。
用户羣:Tomcat推動了很多不同行業的大型的、關鍵的Web應用程序的發展,其中包括ETrade、沃爾瑪、天氣頻道以及EMC等。
Lucene
Apache Lucene是一個高性能、全功能的文字搜索引擎庫,是由Java語言編寫的。Apache Lucene適用於任何需要全文字搜索的應用程序,特別是跨越平台。一開始,Lucene是由Java語言編寫的,目前已經被移植到其他的語言,其中包括Delphi、Perl、C#、C++、Python、Ruby和PHP等。
用户羣:蘋果在線零售店CNET、Netflix、維基百科YelpComcastLinkedIn、The  Smithsonian、多個政府機構(FDA、DOD等)、Technorati互聯網檔案館(例如AOL黃頁的上下文搜索等)。
Struts
Apache Struts是一個用於開發Java EE Web應用程序的開源Web應用程序框架。Apache Struts使用和擴展Java Servlet API去鼓勵開發者採用模型視圖控制器(MVC)構架。
用户羣: IRS、波士頓環球報、大赦國際、Sears、Alamo Car Rental、National Car Rental、Travelocity等等。
Geronimo
Apache Geronimo是Apache軟件基金會的開放源碼J2EE服務器,它集成了眾多先進技術設計理念。這些技術和理念大多源自獨立的項目,配置和部署模型也各不相同。Geronimo項目的目標就是產生一個服務器運行時間框架,將最好的開源替代品彙集到一個統一、易用的模型中,去滿足開發人員和系統管理員的需求。
用户羣:AMD、Chariot Solutions、IBM、Virtuas等。
Ant
Apache Ant是由Apache軟件基金會所提供的一個基於Java的開發工具,它是將軟件編譯、測試、部署等步驟聯繫在一起加以自動化的一個工具,大多用於Java環境中的軟件開發
用户羣:大多數的Java設計都被用於管理大量信息流,例如紐約州就使用Apache Ant去管理美國最大的青年計劃,每天可以實時更新超過25萬學生的記錄。
Cocoon
Apache Cocoon是一個基於Spring框架的圍繞分離理念建立的構架,在這種框架下的所有處理都被預先定義好的處理組件線性連接起來,能夠將輸入和產生的輸出按照流水線順序處理
用户羣:Apache Lenya、Daisy CMS、Hippo CMS、Mindquarry等等,Apache Cocoon通常被作為一個數據抽取、轉換、加載工具或者是系統之間傳輸數據的中轉站。
SpamAssassin
SpamAssassin是一個由Apache開發的一個著名的反垃圾引擎,郵件系統完整的集成了SpamAssassin反垃圾引擎。SpamAssassin中包含了各種各樣的垃圾郵件監測技術,其中包括基於DNS和checksum的垃圾郵件監測、Bayesian過濾、外部程序黑名單和在線數據庫等。
用户羣:SpamAssassin被數以千計的獨立開發商和用户所採用,並被作為數個商業產品的主要成分.\
Axis
Apache Axis是一個基於SOAP應用的框架,核心是一個SOAP處理器,用於開發包括客户端,服務器端,SOAP Gateway等各種應用。
用户羣:WSO2、MuleSource IBM、Progress Software等。
Logging Service
Apache Logging Services項目主要是為了提供應用程式除錯以及監督的日誌登錄服務。 Apache Logging Services項目的產品包括三個日誌登錄框架,分別為log4j for Java、log4cxx for C++以及log4net for the Microsoft .NET framework。Apache Logging Services還被應用於日誌查看器和分析工具Chainsaw中。
用户羣:Apache Logging在Java開發中無處不在。
Common
Commons是一個主要專注於可再用Java組件所有方面的Apache項目。Apache Commons項目由3個部分組成:
*The Commons Proper—可再用Java組件的貯存處;
*The Commons Sandbox—Java組件的開發工作區;
*The Commons Dormant—沙盒組件的貯存庫
用户羣:亞馬遜Web服務、谷歌。  [6] 
參考資料