開源軟件現在成為整個互聯網時代的支撐技術,你可能已經無法離開由開源軟件構建起來的網絡世界了。下面我們就來看看一些最重要的開源技術。
為互聯網而生的操作系統linux
Linux是一款免費的操作系統,誕生於1991年,用戶可以通過網絡或其他途徑免費獲得,並可以任意修改其源代碼。
它能運行主要的UNIX工具軟件、應用程序和網絡協議。它支持32位和64位硬件。Linux繼承了Unix以網絡為核心的設計思想,是一個性能穩 定的多用戶網絡操作系統。這個系統是由全世界各地的成千上萬的程序員設計和實現的。其目的是建立不受任何商品化軟件的版權制約的、全世界都能自由使用的 Unix兼容產品。
Linux可以說是已經無處不在,像Android手機就是以Linux為基礎開發的,世界上大多的超級計算機也都采用的Linux系統,大多數的 數據中心使用Linux作為其支撐操作系統。谷歌、百度、淘寶等都通過Linuxt提供了我們每天用的互聯網服務。Linux在航空控制系統中也扮演著重 要角色。
加密互聯網的安全協議OpenSSL
OpenSSL是套開放源代碼的軟件庫包,實現了SSL與TLS協議。OpenSSL可以說是一個基於密碼學的安全開發包,囊括了主要的密碼算法、常用的密鑰和證書封裝管理功能以及SSL協議,並提供了豐富的應用程序供測試或其它目的使用。
也可以說OpenSSL是網絡通信提供安全及數據完整性的一種安全協議,SSL可以在Internet上提供秘密性傳輸,能使用戶/服務器應用之間的通信不被攻擊者竊聽。OpenSSL被網銀、在線支付、電商網站、門戶網站、電子郵件等重要網站廣泛使用。
去年OpenSSL爆出安全漏洞,因為其應用如此之廣,該漏洞爆出讓整個互聯網都為之震顫。
互聯網的記憶——MySQL
MySQL是一個開源的小型的數據庫管理系統,原開發者為瑞典的MySQL AB公司,該公司於2008年被Sun公司收購。2009年,甲骨文公司(Oracle)收購Sun公司,MySQL成為Oracle旗下產品。
很多信息都是存在數據庫裡面的,很多工程師在開發一些的小型項目時都會采用這個MySQL數據庫。MySQL為C、C++、JAVA、PHP等多重 編程語言提供了API接口。而且支持windows、Mac、Linux等多種系統。這種廣泛的支持使其得到更多開發者的青睐,MySQL是開發者需要掌 握的數據庫之一。
Mysql最初為小型應用而開發,但現在的Mysql已經不是一個小型數據庫了。基本上所有的互聯網公司都會使用這個數據庫系統,一些金融交易也會 采用Mysql作為數據庫引擎。Mysql通過相應的調優既可以支撐大規模的訪問,又可以保證數據安全性,已經成為威脅傳統商業數據庫系統的重要力量。
萬能開發工具Eclipse
Eclipse 是一個開放源代碼的、基於Java的可擴展開發平台。Eclipse最初由OTI和IBM兩家公司的IDE產品開發組創建,起始於1999年4月。目前由 IBM牽頭,圍繞著Eclipse項目已經發展成為了一個龐大的Eclipse聯盟,有150多家軟件公司參與到Eclipse項目中,其中包括 Borland、Rational Software、Red Hat及Sybase等。
就其本身而言,它只是一個框架和一組服務,用於通過插件組件構建開發環境。很多Java編程軟件都是在Eclipse平台開發的,還有包括 Oracle在內的許多大公司也紛紛加入了該項目,並宣稱Eclipse將來能成為可進行任何語言開發的IDE集大成者,使用者只需下載各種語言的插件即 可。
Eclipse並不是一個直接服務於消費者的產品,它更像一個工匠手中萬用工具,用Eclipse開發者可以打造出各種充滿創造性的服務來滿足最終用戶的需求。
互聯網的門衛Apache
Apache HTTP Server(簡稱Apache)是Apache軟件基金會的一個開放源碼的網頁服務器,可以在大多數計算機操作系統中運行,由於其多平台和安全性被廣泛 使用,也是最流行的Web服務器端軟件之一,市場占有率達60%左右。它快速、可靠並且可通過簡單的API擴展,它可以和各種解釋器配合使用,包括 PHP/Perl/Python等。
Apache就像一個負責的門衛,管理著服務器數據的進出。每當你在你的地址欄裡輸入http://XXX.com的時候,在遙遠的遠端,很有可能正是一台跑著Apache的服務器,將你需要的信息傳輸給浏覽器。
大數據的心髒Hadoop
Hadoop 是一個能夠對大量數據進行分布式處理的軟件框架,由Apache基金會開發。用戶可以在不了解分布式底層細節的情況下,開發分布式程序。Hadoop 一 直幫助解決各種問題,包括超大型數據集的排序和大文件的搜索。它還是各種搜索引擎的核心,比如 Amazon 的 A9 和用於查找酒信息 的 Able Grape 垂直搜索引擎。阿裡巴巴集團在商品推薦、用戶行為分析、信用計算領域也都有hadoop的應用。
在“大數據”已經成為潮流的當下,Hadoop已經成為最主要的一項技術。可以毫不誇張的說,沒有Hadoop,就沒有大多數的大數據應用。可以說對一個不知道Hadoop的程序員而言,你已經out了。
互聯網的“排版引擎”WebKit
說是浏覽器內核,其實“排版引擎”更容易理解一些。通過服務器傳輸給浏覽器的信息只是一串亂糟糟的文本。要看到我們平時看到精美的網友,需要浏覽器內核對這些文本進行解析,將枯燥的描述“畫”成美麗的浏覽界面。
WebKit 是一個開源的浏覽器引擎,與之相應的引擎有Gecko(Mozilla Firefox 等使用的排版引擎)和Trident(也稱為MSHTML,IE 使用的排版引擎)。根據StatCounter的浏覽器市場份額調查,於2012年11月,Webkit市占超過了40%,它已經成為擁有最大市場份額的 排版引擎,超越了Internet Explorer所使用的Trident及Firefox所使用的Gecko引擎,並且WebKit份額正在逐年增加。
目前幾乎所有網站和網銀已經逐漸支持WebKit。WebKit 內核在手機上的應用也十分廣泛,例如蘋果的Safari、谷歌的Chrome浏覽器都是基於這個框架來開發的。
小結
很多人可能尚未意識到,我們使用的電腦中運行有開源軟件,手機中運行有開源軟件,家裡的電視也運行有開源軟件,甚至小小的數碼產品中也運行有開源軟件,尤其是互聯網服務器端軟件,幾乎全部是開源軟件。毫不誇張地說,開源軟件已經滲透到了我們日常生活的方方面面。