所謂開源,就是把軟體的原始碼開放出來,大家都能看到原始碼,大家可以一起研究原始碼並對軟體的進行最佳化和改進。
越來越多的IT公司對開源持開放態度,一方面有了優秀的開源項目,就不用再重複造輪子,可以直接拿來使用;另一方面,自己公司有優秀的自研項目,為了發展壯大可以選擇將專案開源,讓更多的開發者參與進來,一起努力提升軟體的功能!
近年來,國內許多大型IT公司也逐漸推出了一些高品質的開源項目,例如華為開源了鴻蒙系統、騰訊開源了自研的頂級資料庫TBase、 阿里開源了自研的科學計算引擎Mars等。
#下面,我們先大概的回顧一下紅帽公司發布的企業開源現狀的調查報告,然後簡單的介紹一下最受IT公司青睞的一些開源專案。這些主要是面向企業的應用軟體項目,涵蓋Web伺服器、大數據、雲端運算、雲端儲存、作業系統、資料庫等幾大類別。
紅帽發表2019年企業開源調查報告
開源技術已被廣泛應用於企業中,這一點毋庸置疑。像Google和微軟這樣的科技巨頭也承認開源的力量——谷歌雲端最近與 MongoDB、redis Labs、Neo4j 和Confluent 等公司建立合作夥伴關係是很好的佐證。但這些企業如何看待開源?為什麼選擇開源?它們關於開源的下一步打算是什麼?基於以上疑問,紅帽發起了「企業開源狀態」調查。
這份報告是對世界各地950 位IT 領導者進行訪談後的成果,調查區域包括美國、英國、拉丁美洲及亞太地區,旨在了解不同地理區域的企業開源概況。
企業是否認為開源具有策略性意義?這是紅帽最先被拋出並且最希望了解的問題。
調查結果顯示,950 位受訪者中,絕大多數人認為開源對企業整體的基礎架構軟體策略具有策略重要性。事實上,超過 69% 的人表示這非常或極其重要。
另外,在過去的12 個月中,68% 的企業增加了對企業開源的使用,超過59% 的企業預計在未來12 個月內將繼續使用企業開源。
今時今日,企業開源也可以取代專有軟體,用於從虛擬化到訊息總線再到應用伺服器等許多不同目的。開源也有助於定義和塑造從容器化到軟體定義儲存和網路的基礎架構的新方法。
其中,使用開源技術達成基礎架構現代化和應用現代化的企業佔比分別為 53% 和 42%。
不過,開源軟體不僅僅是為了取代舊的基礎設施。 42% 的受訪者表示他們正在將其用於數位轉型,具體主要應用於大數據分析和資料庫管理。這一趨勢不容小覷。
開源的獨特之處在於,它使個人和組織能夠以最小的障礙進行協作,實現共同目標。
現今許多新類別的軟體都受到開源技術的影響。人工智慧、軟體定義的基礎架構和雲端原生平台就是一些很好的例子。
當今軟體世界的許多創新都是在開源的情況下發生的,依賴軟體來支援其業務的組織都希望能夠利用這項創新。
正如紅帽CEO Jim Whitehurst 在調查報告開頭所講:“這個時代發生的最激動人心的技術創新正在開源社區形成” 。
「網頁伺服器
1、Nginx
Nginx (engine x) 是俄羅斯人開發出來的高效能的HTTP和反向代理web伺服器,同時也提供了IMAP/POP3/SMTP服務。其特點是佔有記憶體少,並發能力強,Nginx的並發能力在同類型的網頁伺服器中表現較好,很多人使用Nginx來做負載平衡器和web反向代理。 ###########################支援的作業系統:windows、linux 與 OS X######
相關網站:https://nginx.org
2、Lighttpd
######################### ###Lighttpd是一個輕量級的開源Web伺服器軟體,其根本的目的是提供一個專門針對高效能網站,安全、快速、相容性好且靈活的web server環境。具有非常低的記憶體開銷、cpu佔用率低、效能良好以及豐富的模組等特性。廣泛的應用於一些嵌入式的web伺服器。 ######
支援的作業系統:Windows、Linux 和OS X
##相關網址:https://www.lighttpd.net/
3、Tomcat
##
Tomcat伺服器是一個免費的開放原始碼的Web 應用程式伺服器,屬於輕量級應用程式伺服器,主要用於執行JSP 頁面和Servlet。因為Tomcat 技術先進、性能穩定,而且免費,因而深受JAVA 愛好者的喜愛並得到了部分軟體開發人員的認可,成為目前比較流行的Web 應用伺服器。
支援的作業系統:Windows、Linux 和OS X
相關網站:https://tomcat.Apache.org
4、Apache HTTP Server
Apache HTTP Server(簡稱Apache),是Apache軟體基金會的一個開放原始碼的網頁伺服器,可以在大多數電腦作業系統中運行,由於其具有的跨平台性和安全性,被廣泛使用,是自1996 年以來互聯網上最受歡迎的Web 伺服器系統。據稱,目前所有網站中 55.3% 是由 Apache 支援的。
支援的作業系統:Windows、Linux 和OS X
相關網站:https://httpd.apache.org
大數據與雲端運算
#5、Hadoop
Hadoop是由Apache基金會所開發的分散式系統基礎架構,被公認是一套業界大數據標準開源軟體,在分散式環境下提供了大量資料的處理能力。幾乎所有主流廠商都圍繞著Hadoop開發工具、開源軟體、商業化工具和技術服務,Hadoop已經成為大數據的標配框架。
支援的作業系統:Windows、Linux 和OS X
#相關網站:http://hadoop.apache .org
6、Docker
Docker是一個開源的應用程式容器引擎,開發者可以打包自己的應用到容器裡面,然後遷移到其他機器的docker應用程式中,可以實現快速部署,廣泛的被應用於大數據的領域。基本上做大數據的公司都會使用到該工具。另外,搜尋公眾號Linux就該這樣學後台回覆“Linux”,取得驚喜禮包。
支援的作業系統:Windows、Linux 和OS X
##相關網址:https://www.docker.com
7、Spark
##
Apache Spark 是專為大規模資料處理而設計的快速通用的運算引擎。 Spark類似於Hadoop MapReduce的通用平行框架。 Apache Spark 聲稱,「它在記憶體中運行程式的速度比Hadoop MapReduce 最多快100 倍,在磁碟上快10 倍。Spark能更好地適用於資料探勘與機器學習等需要迭代的MapReduce的演算法。
支援的作業系統:Windows、Linux 和OS X
相關網站:http://spark.apache.org
8、Storm
Storm是個Twitter開源的分散式即時大數據處理系統,被業界稱為即時版Hadoop。隨著越來越多的場景對Hadoop的MapReduce高延遲無法容忍,例如網站統計、推薦系統、預警系統、金融系統(高頻交易、股票)等等,大數據即時處理解決方案(流計算)的應用日趨廣泛,目前已是分散式技術領域最新爆發點,而Storm更是流運算技術中的佼佼者和主流。
牛逼啊!接私活必备的 N 个开源项目!
#支援的作業系統:Windows、 Linux 與OS X
相關網站:https://storm.apache.org
9、Cloud Foundry
#Cloud Foundry是業界第一個開源PaaS雲端平台,它支援多種框架、語言、執行時間環境、雲端平台及應用服務,使開發人員能夠在幾秒鐘內進行應用程式的部署和擴展,無需擔心任何基礎架構的問題。它聲稱“由行業領袖為行業領袖構建”,其支持者包括 IBM、 Pivotal、惠普企業、VMware、英特爾、SAP 和 EMC。
支援的作業系統:與系統無關
#相關網站:https://www.cloudfoundry.org
10、CloudStack
CloudStack是一個開源的具有高可用性及擴充性的雲端運算平台,同時是一個開源雲端運算解決方案。可加速高擴充性的公有和私有雲(IaaS)的部署、管理、配置。使用CloudStack作為基礎,資料中心操作者可以快速方便的透過現存基礎架構建立雲端服務。
支援的作業系統:與作業系統無關
相關網站:https://cloudstack.apache.org
#11、OpenStack
#
OpenStack是一個開源的雲端運算管理平台項目,是一系列軟體開源專案的組合。由NASA(美國國家航空暨太空總署)和Rackspace合作研發並發起,授權的開源程式碼專案。 OpenStack為私有雲和公有雲提供可擴展的彈性的雲端運算服務。專案目標是提供實施簡單、可大規模擴展、豐富、標準統一的雲端運算管理平台。這種很受歡迎的雲端運算平台聲稱,「世界上成百上千個大品牌」每天都依賴它。
支援的作業系統:與作業系統無關
相關網站:https://www.openstack.org
雲儲存
12、Gluster
GlusterFS是一個可高度擴展、可伸縮的分散式檔案系統,適用於雲端儲存和媒體串流等資料密集型任務。實現了全部標準POSIX接口,並用fuse實現虛擬化,讓用戶看起來就像是本地磁碟一樣。能夠處理千數量級的客戶端。
支援的作業系統:Linux、Windows
相關網站:https://www.gluster.org
#13、FreeNAS
13、FreeNAS
FreeNAS是一套免費開源的NAS伺服器,它能將一部普通PC變成網路儲存伺服器。軟體基於FreeBSD,Samba 及php,支援CIFS (samba), FTP, NFS protocols, Software RAID (0,1,5) 及 web介面的設定工具。使用者可透過Windows、macs、FTP、SSH 及網路檔案系統 (NFS) 存取儲存伺服器;FreeNAS可安裝於硬碟或行動媒體USB Flash Disk。 FreeNAS 伺服器前途無量;它是組成簡單網路儲存伺服器的絕佳選擇
支援的作業系統:與系統無關
相關網站:http://www.freenas.org
14、Lustre
#
Lustre是一個開源、分散式並行檔案系統軟體平台,具有高可擴展、高效能、高可用等特點。 Lustre的建構目標是為大規模運算系統提供一個全域一致的POSIX相容的命名空間,這些運算系統包括了世界上包含最強大的高效能運算系統。它支援數百PB資料儲存空間,支援數百GB/s乃至數TB/s並發聚合頻寬。一些最早採用它的用戶包括美國的幾大國家實驗室:勞倫斯·利物莫爾國家實驗室、桑迪亞國家實驗室、橡樹嶺國家實驗室和洛斯阿拉莫斯國家實驗室。
支援的作業系統:Linux
相關網站:http://lustre.org
15、Ceph
支援的作業系統:Linux
#相關網站:https://ceph.com
#作業系統
16、centos
CentOS(Community Enterprise Operating System,中文意思是社群企業作業系統)是Linux發行版之一,它是來自於Red Hat Enterprise Linux依照開放原始碼規定所釋放的原始碼所編譯而成。由於出自相同的原始碼,因此有些要求高度穩定性的伺服器以CentOS取代商業版的Red Hat Enterprise Linux使用。兩者的不同,在於CentOS完全開源。
17、Ubuntu
# #
Ubuntu也是開源的,也擁有龐大的社群力量,用戶可以方便地從社群獲得幫助,提供廣受歡迎的Linux發行版,有多個版本:桌面版、伺服器版、雲端版、手機版、平板電腦版和物聯網版。聲稱用戶包括亞馬遜、IBM、維基百科和英偉達。
相關網站:http://www.ubuntu.com/index_kylin
資料庫
18、MySQL
MySQL是用C/C 編寫的關係型資料庫,自稱是“世界上最受歡迎的開源資料庫”,備受眾多網路公司的青睞,除了免費社群版外,它還有多款收費版。雖然是免費開源的,但效能有足夠的保證,國內很多IT公司都在使用MySQL。
支援的作業系統:Windows、Linux、Unix 和OS X
相關網站:https://www .mysql.com
#19、PostgreSQL
PostgreSQL是一個功能非常強大的、原始碼開放的客戶/伺服器關係型資料庫管理系統。國內知名的華為高斯資料庫和騰訊的TBase資料庫均是在該資料庫的基礎上發展而來的。國內最牛的阿里OceanBase資料庫所有程式碼都是自主研發的,雖然不是PostgreSQL基礎上開發出來的,但應該也藉鑒了PostgreSQL的許多特性和有點。
支援的作業系統:Windows、Linux、Unix 和OS X
##相關網站:https://www.postgresql.org
#20 、MongoDB
MongoDB 是一種 NoSQL 資料庫,是基於分散式檔案儲存的資料庫。由C 語言編寫。旨在為應用提供可擴展的高效能資料儲存解決方案。
牛逼啊!接私活必备的 N 个开源项目!
#MongoDB是介於關聯式資料庫與非關聯式資料庫之間的產品,是非關聯式資料庫當中功能最豐富,最像關聯式資料庫。用戶包括 Foursquare、《富比士》、Pebble、Adobe、領英、eHarmony 及其他公司。提供收費的專業版和企業版。
支援的作業系統:Windows、Linux、OS X 和Solaris
相關網站:https:// www.mongodb.org
#21、Cassandra
這種NoSQL 資料庫由Facebook開發,其用戶包括蘋果、歐洲原子核研究組織(CERN)、康卡斯特、電子港灣、GitHub、GoDaddy 、Hulu、Instagram、Intuit、網飛、Reddit等科技公司。它支援極其龐大的數據集,聲稱擁有非常高的性能和出色的耐用性和彈性。可透過第三方獲得支援。
支援的作業系統:與作業系統無關
相關網站:https://cassandra.apache.org
#22、CouchDB
######################################### ###########################
CouchDB是用Erlang開發的以文件為導向的資料庫系統,這種NoSQL 資料庫將資料儲存在JSON 文件中,這類文件可透過HTTP 來加以查詢,並用JavaScript 來處理。 CouchDB現在歸 IBM 所有,它提供一款專業人員支援的軟體版本,使用者包括:三星、Akamai、Expedia、微軟遊戲工作室及其他公司。
支援的作業系統:Windows、Linux、OS X 和Android
相關網站:https://couchdb.apache.org
23、Neo4j
Neo4J一個高效能的NOSQL圖形資料庫,它將結構化資料儲存在網路上而不是表中,自詡為「世界上領先的圖形資料庫”,用於詐欺檢測、推薦引擎、社交網站、主資料管理及更多領域。使用者包括電子港灣、沃爾瑪、思科、惠普、埃森哲、CrunchBase、eHarmony、Care.com 及另外許多企業組織。 另外,搜尋公眾號技術社群後台回覆“演算法”,取得驚喜禮包。
支援的作業系統:Windows 與Linux
相關網站:https://neo4j.com
開發工具與元件
#24、Bugzilla
Bugzilla 是開源社群的寵兒,使用者包括 Mozilla、Linux 基金會、GNOME、KDE、Apache、Libreoffice、Open Office、Eclipse、紅帽、Novell及其他公司。這款軟體缺陷追蹤系統(bugtracker)的重要功能包括:進階搜尋功能、電子郵件通知、預定報告、時間追蹤、出色的安全性及更多功能。
支援的作業系統:Windows、Linux 和OS X
相關網站:https://www.bugzilla.org
#25、Eclipse
#
Eclipse 專案最為知名的是,它是一種大受歡迎的面向Java 的整合開發環境(IDE),它還提供面向C/C 和PHP 的IDE,此外提供另外一大批開發工具。主要支持者包括冠群科技、Google、IBM、甲骨文、紅帽和 SAP。
支援的作業系統:與作業系統無關
相關網站:https://www.eclipse.org
26、Ember. js
#Ember.js是一個開源的JavaScript用戶端框架,用於開發Web應用程式並使用MVC架構模式,這種框架用於“構建野心勃勃的Web 應用程式”,旨在為JavaScript 開發人員提高工作效率。官方網站上顯示用戶包括雅虎、Square、Livingsocial、Groupon、Twitch、TED、網飛、Heroku 和微軟。
支援的作業系統:與作業系統無關
相關網站:https://emberjs.com
#27、Node.js
Node 是一個讓JavaScript 運行在服務端的開發平台,它讓JavaScript 成為與PHP、Python、Perl、Ruby 等服務端語言平起平坐的腳本語言,它讓開發人員可以使用JavaScript,編寫伺服器端應用程式。開發工作前由 Joyent 管控,現在交由 Node.js 基金會監理。使用者包括 IBM、微軟、雅虎、SAP、領英、貝寶和網路飛行。
支援的作業系統:Windows、Linux 與 OS X
相關網站:https://nodejs.org/en/
28、React Native
##################### #######React Native 由Facebook 開發,此框架可用於使用JavaScript 和React JavaScript 程式庫(同樣由Facebook 開發),建構原生行動應用程式。其他用戶包括:《探索》頻道和 CBS 體育新聞網。 ######
支援的作業系統:OS X
相關網站:https: //facebook.github.io/react-native/
#29、Ruby on Rails
Ruby on Rails是一個可以讓你開發、部署、維護 web 應用程式變得簡單的框架。這個 Web 開發框架在開發人員當中極為流行,它聲稱「為確保程式設計師滿意和持續高效地工作進行了最佳化」。使用者包括 Basecamp、推特、Shopify 和 GitHub 等公司。
支援的作業系統:Windows、Linux 和OS X
相關網站:https://rubyonrails.org
#中間件
30、JBoss
JBoss是一個基於J2EE的開放原始碼的應用程式伺服器。 JBoss代碼遵循LGPL許可,可以在任何商業應用中免費使用。 JBoss是一個管理EJB的容器和伺服器,支援EJB 1.1、EJB 2.0和EJB3的規範,但JBoss核心服務不包括支援servlet/JSP的WEB容器,一般與Tomcat或Jetty綁定使用。 JBoss中間件包括各種輕量級、對雲端運算友善的工具,同時結合、整合和自動化各個企業應用程式和系統。使用者包括:橡樹嶺國家實驗室、日產、思科、冠群科技、AMD 及其他公司。
支援的作業系統:Linux
#相關網站:https://www.jboss.org/
以上是最受 IT 公司歡迎的 30 款開源軟體,我竟然都用過!的詳細內容。更多資訊請關注PHP中文網其他相關文章!