校長兼撞鐘 | 【軟體】lighttpd , thttpd , shttpd - 羽量級 WebServer 此乃轉貼文章 , 原文網址: http://www.hzqbbc.com/blog/arch/2005...pd_thttpd.html lighttpd,thttpd,shttpd - 輕量級webserver介紹 國內絕大部分的web server不是IIS就是Apache,而論市場佔有率,我認為Apache是大贏家了,至少是佔據了半壁江山。 但除了IIS/Apache外,其實我們有很多選擇,對於高負載/大並發的網站而言,高性能、輕量級的web server是一劑良藥。最近手頭一台Server 的負載太高,居然將swap吃光導致機器非常緩慢,後來一查,原來是Apache耗掉了幾乎所有資源,當時apache進程已有9XX個了。 於是用輕量級的web server替換掉apache就進入了日程表。這裡順帶介紹一下這些可選的對象: lighttpd | thttpd | shttpd lighttpd 官方主頁:www.lighttpd.net Lighttpd是一個德國人領導的開源軟件,其根本的目的是提供一個專門針對高性能網站,安全、快速、兼容性好並且靈活的web server環境。具有非常低的內存開銷,cpu佔用率低,效能好,以及豐富的模塊等特點。 lighttpd是眾多OpenSource輕量級的web server中較為優秀的一個。支持FastCGI, CGI, Auth, 輸出壓縮(output compress), URL重寫, Alias等重要功能,而Apache之所以流行,很大程度也是因為功能豐富,在lighttpd上很多功能都有相應的實現了,這點對於apache的用戶是非常重要的,因為遷移到lighttpd就必須面對這些問題。 在google搜索了一下,簡體中文介紹lighttpd的文章幾乎沒有,大多數都是台灣同胞的Big5內容。因此在接下來的時間裡,想好好寫一篇介紹lighttpd,以及簡單的benchmark的文章。 實用起來lighttpd確實非常不錯,上文提到的apache overload的問題,用lighttpd就完全解決了。apache主要的問題是密集並發下,不斷的fork()和切換,以及較高(相對於lighttpd而言)的內存佔用,使系統的資源幾盡枯竭。而lighttpd採用了Multiplex技術,代碼經過優化,體積非常小,資源佔用很低,而且反應速度相當快。 利用apache的rewrite技術,將繁重的cgi/fastcgi任務交給lighttpd來完成,充分利用兩者的優點,現在那台服務器的負載下降了一個數量級,而且反應速度也提高了一個甚至是2個數量級! thttpd 官方網站:http://www.acme.com/software/thttpd/ thttpd是一個非常小巧的輕量級web server,它非常非常簡單,僅僅提供了HTTP/1.1和簡單的CGI支持,在其官方網站上有一個與其他web server(如Apache, Zeus等)的對比圖+Benchmark,可以參考參考。此外,thttpd 也類似於lighttpd,對於並發請求不使用fork()來派生子進程處理,而是採用多路復用(Multiplex)技術來實現。因此效能很好。 Thttpd支持多種平台,如FreeBSD, SunOS, Solaris, BSD, Linux, OSF等。對於小型web server而言,速度快似乎是一個代名詞,通過官方站提供的Benchmark,可以這樣認為:thttpd至少和主流的web server一樣快,在高負載下更快,因為其資源佔用小的緣故。 Thttpd還有一個較為引人注目的特點:基於URL的文件流量限制,這對於下載的流量控制而言是非常方便的。像Apache就必須使用插件實現,效率較thttpd低。 shttpd 官方網站:http://shttpd.sourceforge.net/ Shttpd是另一個輕量級的web server,具有比thttpd更豐富的功能特性,支持CGI, SSL, cookie, MD5認證, 還能嵌入(embedded)到現有的軟件裡。最有意思的是不需要配置文件! 由於shttpd可以嵌入其他軟件,因此可以非常容易的開發嵌入式系統的web server,官方網站上稱shttpd如果使用uclibc/dielibc(libc的簡化子集)則開銷將非常非常低。以下是其特點: Stand-alone server, or embeddable into existing C/C++ program GET, POST, PUT, DELETE methods CGI SSL Digest (MD5) authorization Multiple (and user defineable) index files Directory listing Standard logging Cookies inetd mode User-defineable mime types No configuration files No external dependencies 由於shttpd可以輕鬆嵌入其他程序裡,因此shttpd是較為理想的web server開發原形,開發人員可以基於shttpd開發出自己的webserver! |
回覆 |
校長兼撞鐘 | 不知道有無其他朋友用過 lighttpd 這套 Web Server ? 我知道的是 KKBOX 就是跑 lighttpd http://uptime.netcraft.com/up/graph?...w.kkbox.com.tw 針對流量較大的網站 , 或許可以研究一下 lighttpd 是否是更好的選擇 |
回覆 |
校長兼撞鐘 | Linux 上完全手動編譯安裝 Lighttpd + PHP4(FastCGI) + eAccelerator http://blog.sina.com.tw/archive.php?...=entry&id=9778 |
回覆 |
進階會員 | 引用:
thttpd 也是相同的情形,我都只用來處來靜態的網頁。 這兩個比較起來,我個人比較欣賞 lighttpd的表現 | |
回覆 |
會員 | 回覆: 【軟體】lighttpd , thttpd , shttpd - 羽量級 WebServer 好像微風論壇也用lighttpd http://bbs.wefong.com 此篇文章於 2007-01-21 02:20 PM 被 j9595 編輯。. |
回覆 |
會員 | 回覆: 【軟體】lighttpd , thttpd , shttpd - 羽量級 WebServer 此篇文章於 2007-01-11 05:46 PM 被 carloschen 編輯。. |
回覆 |
會員 | 回覆: 【軟體】lighttpd , thttpd , shttpd - 羽量級 WebServer |
回覆 |
|
類似的主題 | ||||
主題 | 主題作者 | 討論版 | 回覆 | 最後發表 |
『求助』如何讓 shttpd 跑 php 呢? | windata | ☉ -- 架 站 DIY 討 論 版 | 3 | 2006-03-15 08:22 AM |
【求助】如何讓 Webserver 瀏覽時快一點 | shung0116 | ☉ -- 架 站 DIY 討 論 版 | 2 | 2006-01-16 01:37 PM |
【求助】想在 FreeBSD 上安裝 Apache Webserver 和 ProFTPD | 阿敏 | -- FreeBSD & Linux 討 論 版 | 5 | 2004-04-09 12:26 PM |
XML | RSS 2.0 | RSS |
本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。