開源運動廣受歡迎,并且在軟件開發史上寫下了濃重一筆。但是它影響最深遠的地方在哪呢?有史以來,最成功的開源“項目”又是什么呢?

  事實上,總體來看,Web不就是開源運動最大的成功么?

  可能最有名的例子就是隱藏于眾多網站背后的LAMP,也就是Linux、Apache、MySQL和PHP。但當你仔細考慮后,你會發現更多。

  下面列出了Web得以運轉的一些開源項目。

Web是開源最大的成功

  Web browsers - 網絡瀏覽器

  在網絡瀏覽器市場中,雖然微軟的封閉源碼軟件IE瀏覽器仍然占有很大的份額,但其它功能相似的開源項目已經流行起來,并在不斷壯大。像 Mozilla公司的 Firefox瀏覽器(它是開源的,還有Flock、PaleMoon)。還有增長迅速的基于Webkit的瀏覽器,像Safari,但最著名的是 Chrome瀏覽器。

  如果把手機網絡也算到這里面,其中Webkit主宰著iPhone、Android和Blackberry手機中的瀏覽器。

  Web server software - Web服務器軟件

  迄今為止,Apache是使用范圍最廣的網絡服務器軟件,它是開源的,但是一個叫做Nginx的輕量級服務器軟件在最近幾年開始流行起來。事實上,三大頂級網絡服務器軟件中有兩個是開源的(排名第二的微軟的IIS是例外,但其距離第一相差甚遠)。

  另外,大量服務器端底層軟件也是開源的。例如,很多大流量網站使用Varnish作為與網站訪問者之間的緩存層,而使用Memcached作為與網站數據庫之間的緩存層。這只是眾多例子中的兩個。

  Scripting languages and web frameworks - 腳本語言和Web框架

  網絡上使用的大部分編程和腳本語言都是開源的,比如PHP、Perl、Python、Ruby等。

  但是,很少有網站完完全全是從零開始。毫不夸張的說,有成百上千的開源內容管理系統(CMS)和網絡框架來協助開發人員,例如WordPress、Drupal、Ruby on Rails、Django、Joomla等。

  Databases - 數據庫

  開源軟件MySQL是目前為止最流行的網站數據庫,但還有其它功能相似的開源軟件,比如PostgreSQL,更不用說近來出現的眾多“非關系型(NoSQL)”數據庫。

  既然我們說到了底層軟件,那就不得不提一下每次我們使用互聯網或因特網上的任何東西時都要依靠的基礎系統:

  DNS - 域名解析系統

  Web(就此而言是整個因特網)離開了域名解析系統就一無是處。大家都知道,域名解析系統可以讓用戶使用像example.com之類的域名,而不是IP地址。BIND幾乎是DNS服務器(亦稱名稱服務器)軟件的實際標準,并且,你現在可能已經猜到了,它是開源的。

  Server operating systems - 服務器操作系統

  所有網站都必須在服務器上運行,而那也是開源的統治領域。雖然Windows統治著桌面領域,但是網站賴以運行的服務器大部分采用開源的Linux操作系統,其他比較流行的選擇是freeBSD和OpenBSD。

  開源的誘惑

  由于在許多情況下,開源軟件能夠提供與商業的封閉源碼軟件相同的性能,并且又是免費的,所以開源軟件如此流行并不奇怪。免費是一個難以挑戰的價格。

  假如Web不是運行在所有這些免費軟件上,那么它很可能需要一段艱苦的過程,才能讓人們廣泛接受。

  注意我們并沒說過Web中沒有任何封閉源碼軟件,而那顯然是存在的。但是,從統計數據看,Web開源統治領域中真正的例外是微軟的基于Windows系列系統。

  除了那個,你通常需要深入研究才能發現更多私有封閉源碼技術,像路由器和類似設備上的操作系統。但那是因特網,而不是Web。

  結束語

  多虧了80年代因特網、便捷通訊以及合作與共享的興起,開源運動才得以蓬勃發展。在90年代,當Web誕生于頂層因特網設備時,開源運動已經準備好助其一臂之力了。

  沒有人會否認開源統治著Web的大部分。開源和Web是一個合作共生的關系,互利互惠,合作共贏。這就是為什么我們認為Web可以說是迄今為止是開源最大的成功。