linux輕量級(jí) Web 服務(wù)器第2/2頁(yè)
- Cheetah Server,用不到一千行的 C 代碼編寫(xiě)而成。
- DustMote,一個(gè)非常 小的 Web 服務(wù)器,用一個(gè)大約 3000 字節(jié)的 Tcl 源文件實(shí)現(xiàn)。
- fnord,大小取決于平臺(tái)和配置,不超過(guò) 20K。雖然很小,但是它支持虛擬主機(jī)、CGI 和 keep-alive。
- ihttpd,使用不到 800 行的 C 代碼,包括 CGI,并通過(guò)
inetd
提供頁(yè)面。 - im-httpd,非常小的服務(wù)器 —— 只有大約 7 KB,鏈接到
glibc
。而且它也非??臁? - mattows,支持 CGI,只有 600 行 C 代碼。
- Scrinchy,雖然很小,不到 30KB,但是支持多種腳本編制語(yǔ)言,包括一種特殊用途的、基于棧的 Sy 腳本語(yǔ)言。
- ZWS 演示了一個(gè)即使是使用 500 多行帶足夠注釋的 zsh (!) 編寫(xiě)的應(yīng)用程序 —— 在這里是一個(gè) HTTP 0.9+ 服務(wù)器 —— 也可以有多強(qiáng)大。
體積小并不妨礙這些服務(wù)器被正式使用。例如,fnord 可以處理數(shù)千個(gè)同時(shí)進(jìn)行的連接。也許輕量級(jí)作為一個(gè)類別最令人印象深刻的成就是高性能服務(wù)器:
- cghttpd 是一個(gè)小型 Web 服務(wù)器,它被理解為使用 2.6 系列內(nèi)核中可用的異步功能的一個(gè)試驗(yàn)品。
- darkhttpd 是一個(gè)快速的、單線程的 HTTP/1.1 服務(wù)器。
- Gatling 是為高性能設(shè)計(jì)的。它的特性包括 FTP、IPv6、虛擬主機(jī)、CGI 等。
- Kernux 是一個(gè) Linux 內(nèi)核模塊,它實(shí)現(xiàn)了一個(gè) HTTP 守護(hù)進(jìn)程。
- lighttpd 是使用率排名第五的 Web 服務(wù)器(排名還在上升)。它為很多同時(shí)進(jìn)行的連接進(jìn)行了優(yōu)化:“典型的場(chǎng)景是使用 lighttpd 作為一個(gè)下載(off-load)服務(wù)器,以提供靜態(tài)內(nèi)容……”
- LiteSpeed Web Server 是一款輕量級(jí)商業(yè) Web 服務(wù)器,強(qiáng)調(diào)性能和安全性。 LiteSpeed Technologies 公司宣傳為靜態(tài)內(nèi)容提速了 6 倍,在解釋頁(yè)面方面也有一定的提高。
- Miniature JWS,也稱 tjws,它是基于 Java 的 Web 服務(wù)器,可以處理 servlet、JSP 和數(shù)千個(gè)并發(fā)連接,而大小只有 77 KB。它的作者聲稱它 “比 Apache 2.x 快 10%”。
- Yaws 是用 Erlang 編寫(xiě)的一款高性能 HTTP/1.1 服務(wù)器。
有些 Web 服務(wù)器被實(shí)現(xiàn)為類或庫(kù),以便嵌入 到較大的應(yīng)用程序中。 在這些 Web 服務(wù)器當(dāng)中,我發(fā)現(xiàn)特別有趣的有:
- EHS —— “嵌入式 HTTP 服務(wù)器”,被設(shè)計(jì)為一個(gè) C++ 類,用于嵌入到較大的 C++ 應(yīng)用程序;還有
- Embedded TCL Web Server,它是一個(gè)很普通的 Web 服務(wù)器,支持 SSL 和 Basic Authentication,速度非???—— 其作者使它至少與 lighthttpd 和 AOLserver 一樣快。它是用不到 100 行 Tcl 編寫(xiě)的。
Python 是幾種適合不尋常環(huán)境的 Web 服務(wù)器的實(shí)現(xiàn)語(yǔ)言,這些 Web 服務(wù)器包括:
- cdServer 是一個(gè)小型的、用 Python 編寫(xiě)的 HTTP 服務(wù)器,它 “被設(shè)計(jì)用來(lái)提供來(lái)自 CD-ROM 的(靜態(tài))內(nèi)容” 。它在提供動(dòng)態(tài)內(nèi)容方面能力有限。我們有幾個(gè)涉及不受影響的 “l(fā)ive CDs” 的項(xiàng)目,在這些項(xiàng)目中像 cdServer 之類的工具很關(guān)鍵。
- edna,一款智能的用 Python 編寫(xiě)的 MP3 服務(wù)器,它是用 HTTP 實(shí)現(xiàn)的。
還有其他一些用 Perl 和其他不出名的語(yǔ)言編寫(xiě)的輕量級(jí) Web 服務(wù)器:
- Camlserv,用 ocaml 編寫(xiě)的一個(gè)完整的 Web 服務(wù)器,目標(biāo)是 “高度交互式的 Web 頁(yè)面”。它由幾千行 ocaml 編寫(xiě)而成,其中大部分代碼都與 MySQL 和 HTML 的特殊處理有關(guān)。
- dhttpd 用和 Apache 相同的格式記錄訪問(wèn)。它支持 CGI,并具有內(nèi)建的 Perl 解釋器、虛擬主機(jī)、IPv6、帶寬管理和安全性等方面的特性。
- DNHTTPD 是用 Perl 編寫(xiě)的,用于 UNIX®。它支持虛擬主機(jī)、SSL 連接、CGI 等。
- Jellybean 是用 Perl 編寫(xiě)的基于 HTTP 的 Perl Object Server。
- lns.http 是一個(gè) Common LISP HTTP/1.1 Web 框架。
- Mongrel 是用 Ruby 編寫(xiě)的、用于 HTTP 的一個(gè)庫(kù)和服務(wù)器。
- Nanoweb 是用 PHP 編寫(xiě)的一款快速、健壯的 Web 服務(wù)器。它宣稱具有豐富的特性,包括完全遵從 HTTP/1.1、訪問(wèn)控制、身份驗(yàn)證、虛擬主機(jī)、SSL 兼容性等。
- Naridesh 是用 Perl 編寫(xiě)的 Web 服務(wù)器。
- OpenAngel 是用 Perl 編寫(xiě)的。它強(qiáng)調(diào)的重點(diǎn)是安全性。
- Xavante 是用 Lua 編寫(xiě)的 HTTP/1.1 Web 服務(wù)器。
- XSP 是用 C# 編寫(xiě)的,用于運(yùn)行 ASP.NET。
有時(shí)候您可能需要其他一些用 C 編寫(xiě)的、具有不常見(jiàn)的次要優(yōu)勢(shì)的輕量級(jí) Web 服務(wù)器:
- ABYSS 可以在 UNIX 和 Win32 之間移植,其 “目的是成為完全遵從 HTTP/1.1 的 Web 服務(wù)器”。它占用的內(nèi)存很少。
- Anti-Web HTTPD(也稱 “Anti-Web”、“awhttpd” 和 “AW”)是一款單進(jìn)程、無(wú)線程、支持 CGI 的服務(wù)器,它強(qiáng)調(diào)安全性和簡(jiǎn)單性。
- MHTTPD 支持從外部文件或 LDAP 服務(wù)器進(jìn)行的 MHTTPD Basic Authentication。
- mini-httpd 可以在一個(gè)系統(tǒng)線程中處理多個(gè)并發(fā)請(qǐng)求,但是在主機(jī)上占用的內(nèi)存或 CPU 很少。
- Naken Web 類似于很多其他的輕量級(jí)服務(wù)器 —— 它支持 Basic Authentication、靜態(tài)內(nèi)容等 —— 但是它的作者將它設(shè)計(jì)為用于 Webcam 操作,并且在 Gumstix、WRT54GL、OpenWrt 和其他新的平臺(tái)上運(yùn)行。
- Null httpd 是一款多線程的、簡(jiǎn)單的、可移植的 Web 服務(wù)器。
- Seminole 是一款商業(yè) Web 服務(wù)器,內(nèi)存需求較小,功能較多。
- thttpd throttle,支持
chroot
、 Basic Authentication 等。
![]() ![]() |
![]()
|
Web 服務(wù)器遠(yuǎn)遠(yuǎn)不止是 Apache 和 IIS 的天下。您可以發(fā)現(xiàn)很多其他的 Web 服務(wù)器,它們很小,易于理解,但是又足夠快,可以被正式使用。這樣的 Web 服務(wù)器可以很好地加快您的下一個(gè)項(xiàng)目。
學(xué)習(xí)
- 您可以參閱本文在 developerWorks 全球站點(diǎn)上的 英文原文 。
- LinuxLinks 和 Wikipedia 有一系列的輕量級(jí) Web 服務(wù)器。
- 想知道某個(gè)站點(diǎn)使用(或者 聲稱使用)什么服務(wù)器軟件嗎? 請(qǐng)參閱 Netcraft 。
- Netcraft 計(jì)算出 lighttpd 占 Web 服務(wù)器市場(chǎng) 1.2% (第 5 名)的份額, Serverwatch 則估計(jì) 其市場(chǎng)份額的增長(zhǎng)是由那些尋求 Apache 替代品的管理員帶動(dòng)的。
- 三名匈牙利學(xué)者根據(jù)他們分別用 C 和 bash 編寫(xiě)的兩個(gè)例子撰寫(xiě)了 “Portable minimal Web servers”。
- “Implementing a Lightweight Web Server for Resource Pooling and Scalability” 這篇文章詳細(xì)描述了這里列出的所有服務(wù)器的常見(jiàn)的考慮和用法,雖然 Java 實(shí)現(xiàn)語(yǔ)言在它們當(dāng)中只占少數(shù)。
- REBOL 的發(fā)明者通過(guò)這個(gè)用 REBOL 編寫(xiě)的 單頁(yè)面 Web 服務(wù)器 展示該語(yǔ)言的能力。
- 在我們的技術(shù)文庫(kù)中獲得更多 面向 Web 開(kāi)發(fā)人員的文章 和 教程。
- 訂閱 我們的時(shí)事通訊。
獲得產(chǎn)品和技術(shù)
- 下載免費(fèi)的 IBM 試用軟件,包括 IBM HTTP Server、WebSphere Application Server Community Edition 等流行產(chǎn)品,還有更多其他產(chǎn)品。
討論
- 加入 developerWorks 社區(qū):瀏覽 博客、論文、空間 等。
相關(guān)文章
Apache中Virtual Host虛擬主機(jī)配置及rewrite參數(shù)說(shuō)明
這篇文章主要介紹了Apache中Virtual Host虛擬主機(jī)配置及rewrite模塊中的重要參數(shù)說(shuō)明,是在同一個(gè)Apache服務(wù)器軟件上部署多個(gè)站點(diǎn)的基礎(chǔ)方法,需要的朋友可以參考下2016-03-03linux防火墻配置教程之訪問(wèn)外網(wǎng)web實(shí)驗(yàn)(3)
這篇文章主要為大家詳細(xì)介紹了linux防火墻配置教程之訪問(wèn)外網(wǎng)web的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04CentOS平臺(tái)實(shí)現(xiàn)搭建rsync遠(yuǎn)程同步服務(wù)器的方法
這篇文章主要介紹了CentOS平臺(tái)實(shí)現(xiàn)搭建rsync遠(yuǎn)程同步服務(wù)器的方法,較為詳細(xì)的分析了CentOS搭建rsync遠(yuǎn)程同步服務(wù)器的具體步驟、相關(guān)命令與注意事項(xiàng),需要的朋友可以參考下2018-04-04Centos7下編譯安裝配置Nginx+PHP+MySql環(huán)境
這篇文章主要介紹了Centos7下編譯安裝配置Nginx+PHP+MySql環(huán)境,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02