網(wǎng)站建設(shè)Nginx/Lighttpd/Apache三大web服務(wù)器對(duì)比分析

2024-02-19    分類: 網(wǎng)站建設(shè)

多年前Apache基金會(huì)Web服務(wù)器簡稱「Apache」,由于使用者眾多幾乎等同于「Web服務(wù)器」。httpd(含義是簡單的http進(jìn)程)是它在Linux系統(tǒng)上的守護(hù)進(jìn)程-同時(shí)它被預(yù)裝到主流的Linux發(fā)行版中。

Apache初版于1995年發(fā)布,它在維基百科描述如下,「它在萬維網(wǎng)(WWW)發(fā)展初期發(fā)揮了至關(guān)重要的作用」。從W3techs統(tǒng)計(jì)結(jié)果來看,它依然是最常用的Web服務(wù)器軟件。不過,依據(jù)過去十年的發(fā)展趨勢(shì)和與其它服務(wù)器解決方案比較的報(bào)告的結(jié)果來分析,不難發(fā)現(xiàn)它的市場份額正在逐年下降。盡管,Netcraft和Builtwith這兩家提供的報(bào)告略有不同,但不得不承認(rèn)Apache市場份額的縮減與Nginx服務(wù)器份額在增長這一事實(shí)。

Nginx讀作「enginex」-由IgorSysoev在2004年發(fā)布,最初的愿景就是取代Apache在Web服務(wù)器市場上的領(lǐng)導(dǎo)地位。在Nginx的網(wǎng)站上有一篇值得一讀的文章,對(duì)兩款服務(wù)器進(jìn)行了比較。一開始Nginx只是作為Apache某些功能的補(bǔ)充,主要提供靜態(tài)文件服務(wù)支持。得益于它積極的擴(kuò)展在Web服務(wù)器領(lǐng)域相關(guān)功能的全方位支持,這使得它能夠穩(wěn)步增長。

Nginx通常被用作反向代理、負(fù)載均衡和HTTP緩存服務(wù)器。CDN和視頻提供商使用它來構(gòu)將性能強(qiáng)勁的內(nèi)容分發(fā)系統(tǒng)(CDN:contentdeliverysystem)。

Apache在其不短的發(fā)展歷程中,提供了許多有用的模塊。眾所周知管理Apache服務(wù)器對(duì)開發(fā)者極其友好。動(dòng)態(tài)模塊加載能夠在無需重新編譯主服務(wù)器文件的基礎(chǔ)上,將模塊編譯并添加到Apache擴(kuò)展中。通常,這些模塊位于Linux發(fā)行版?zhèn)}庫中,在使用系統(tǒng)包管理器安裝后,便可以通過諸如a2enmod這樣的命令,將其添加到擴(kuò)展中。Nginx服務(wù)器到目前為止,依然無法靈活的實(shí)現(xiàn)動(dòng)態(tài)添加模塊的功能。當(dāng)我們閱讀如何在Nginx服務(wù)器設(shè)置HTTP/2指南時(shí),你就會(huì)發(fā)現(xiàn)模塊需要在構(gòu)建Nginx時(shí),通過設(shè)置參數(shù)選項(xiàng),才能將其添加進(jìn)Nginx服務(wù)器。

另一個(gè)讓Apache保持住市場份額的功臣就是.htaccess重寫文件。它就像Apache服務(wù)器的萬金油一樣,使其成為共享托管技術(shù)的選方案,因?yàn)?htaccess重寫支持在目錄級(jí)別上控制服務(wù)器配置。在Apache服務(wù)器上的每個(gè)目錄都能夠配置自己的.htaccess文件。

在這點(diǎn)上Nginx不僅沒有相應(yīng)的解決方案,而且由于重寫性能低、命中率不高而不被推薦。

LinuxDeploy搭建linux服務(wù)器篇,在寫到安裝寶塔面板時(shí)寫不下去了,雖然寶塔面板成功安裝,但實(shí)際運(yùn)行中一堆BUG,暫時(shí)處于卡殼狀態(tài),所以還在不斷排雷中......

所以,本來想先寫內(nèi)網(wǎng)穿透篇,臨時(shí)用ksweb建個(gè)站,才發(fā)現(xiàn)文章中有錯(cuò)誤地方

網(wǎng)站建設(shè)|我用破舊Android機(jī)建了個(gè)WEB服務(wù)器--基礎(chǔ)搭建

網(wǎng)站建設(shè)|我用破舊Android機(jī)建了個(gè)WEB服務(wù)器--數(shù)據(jù)庫配置

lghttpd/nginx/apach,三選一運(yùn)行即可,文中圖片前面配置了lghttpd,后面圖片又運(yùn)行了Apache,是錯(cuò)的。所以,這里先說下Nginx/Lighttpd/Apache三大web服務(wù)器的對(duì)比吧。

一.軟件介紹(nginxlighttpdapache)

1.nginx

Nginx是一款輕量級(jí)的Web服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,在BSD-like協(xié)議下發(fā)行。其特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng),事實(shí)上nginx的并發(fā)能力在同類型的網(wǎng)頁服務(wù)器中表現(xiàn)較好,中國大陸使用nginx網(wǎng)站用戶有:百度、京東、新浪、網(wǎng)易、騰訊、淘寶等。

其將源代碼以類BSD許可證的形式發(fā)布,因它的穩(wěn)定性、豐富的功能集、示例配置文件和低系統(tǒng)資源的消耗而聞名。

nginx做為HTTP服務(wù)器,有以下幾項(xiàng)基本特性:

處理靜態(tài)文件,索引文件以及自動(dòng)索引;打開文件描述符緩沖。

無緩存的反向代理加速,簡單的負(fù)載均衡和容錯(cuò).

FastCGI,簡單的負(fù)載均衡和容錯(cuò).

模塊化的結(jié)構(gòu)。包括gzipping,byteranges,chunkedresponses,以及SSI-filter等filter。如果由FastCGI或其它代理服務(wù)器處理單頁中存在的多個(gè)SSI,則這項(xiàng)處理可以并行運(yùn)行,而不需要相互等待。

Nginx專為性能優(yōu)化而開發(fā),性能是其最重要的考量,實(shí)現(xiàn)上非常注重效率。它支持內(nèi)核Poll模型,能經(jīng)受高負(fù)載的考驗(yàn),有報(bào)告表明能支持高達(dá)50,000個(gè)并發(fā)連接數(shù)。

Nginx具有很高的穩(wěn)定性。其它HTTP服務(wù)器,當(dāng)遇到訪問的峰值,或者有人惡意發(fā)起慢速連接時(shí),也很可能會(huì)導(dǎo)致服務(wù)器物理內(nèi)存耗盡頻繁交換,失去響應(yīng),只能重啟服務(wù)器。例如當(dāng)前apache一旦上到200個(gè)以上進(jìn)程,web響應(yīng)速度就明顯非常緩慢了。而Nginx采取了分階段資源分配技術(shù),使得它的CPU與內(nèi)存占用率非常低。nginx官方表示保持10,000個(gè)沒有活動(dòng)的連接,它只占2.5M內(nèi)存,所以類似DOS這樣的攻擊對(duì)nginx來說基本上是毫無用處的。就穩(wěn)定性而言,nginx比lighthttpd更勝一籌。

Nginx支持熱部署。它的啟動(dòng)特別容易,并且?guī)缀蹩梢宰龅?*24不間斷運(yùn)行,即使運(yùn)行數(shù)個(gè)月也不需要重新啟動(dòng)。你還能夠在不間斷服務(wù)的情況下,對(duì)軟件版本進(jìn)行進(jìn)行升級(jí)。

2.lighttpd

Lighttpd是一個(gè)德國人領(lǐng)導(dǎo)的開源Web服務(wù)器軟件,其根本的目的是提供一個(gè)專門針對(duì)高性能網(wǎng)站,安全、快速、兼容性好并且靈活的webserver環(huán)境。具有非常低的內(nèi)存開銷、cpu占用率低、效能好以及豐富的模塊等特點(diǎn)。

Lighttpd是眾多OpenSource輕量級(jí)的webserver中較為優(yōu)秀的一個(gè)。支持FastCGI,CGI,Auth,輸出壓縮(outputcompress),URL重寫,Alias等重要功能;而Apache之所以流行,很大程度也是因?yàn)楣δ茇S富,在lighttpd上很多功能都有相應(yīng)的實(shí)現(xiàn)了,這點(diǎn)對(duì)于apache的用戶是非常重要的,因?yàn)檫w移到lighttpd就必須面對(duì)這些問題。

Fastcgi的優(yōu)點(diǎn)在于:

從穩(wěn)定性上看,fastcgi是以獨(dú)立的進(jìn)程池運(yùn)行來cgi,單獨(dú)一個(gè)進(jìn)程死掉,系統(tǒng)可以很輕易的丟棄,然后重新分配新的進(jìn)程來運(yùn)行邏輯.

從安全性上看,fastcgi和宿主的server完全獨(dú)立,fastcgi怎么down也不會(huì)把server搞垮,

從性能上看,fastcgi把動(dòng)態(tài)邏輯的處理從server中分離出來,大負(fù)荷的IO處理還是留給宿主server,這樣宿主server可以一心一意作IO,對(duì)于一個(gè)普通的動(dòng)態(tài)網(wǎng)頁來說,邏輯處理可能只有一小部分,大量的圖片等靜態(tài)IO處理完全不需要邏輯程序的參與(注1)

從擴(kuò)展性上講,fastcgi是一個(gè)中立的技術(shù)標(biāo)準(zhǔn),完全可以支持任何語言寫的處理程序(php,java,python…)

3.apache

Apache是世界使用排名第一的Web服務(wù)器軟件。它可以運(yùn)行在幾乎所有廣泛使用的計(jì)算機(jī)平臺(tái)上,由于其跨平臺(tái)和安全性被廣泛使用,是最流行的Web服務(wù)器端軟件之一。它快速、可靠并且可通過簡單的API擴(kuò)充,將Perl/Python等解釋器編譯到服務(wù)器中。

apache的特性:

幾乎可以運(yùn)行在所有的計(jì)算機(jī)平臺(tái)上;

支持最新的http/1.1協(xié)議;

簡單而且強(qiáng)有力的基于文件的配置(httpd.conf);

支持通用網(wǎng)關(guān)接口(cgi);

支持虛擬主機(jī);

支持http認(rèn)證;

集成perl;

集成的代理服務(wù)器;

可以通過web瀏覽器監(jiān)視服務(wù)器的狀態(tài),可以自定義日志.;

支持服務(wù)器端包含命令(ssi);

支持安全socket層(ssl);

具有用戶會(huì)話過程的跟蹤能力;

支持fastcgi;

支持javaservlets;

分享名稱:網(wǎng)站建設(shè)Nginx/Lighttpd/Apache三大web服務(wù)器對(duì)比分析
分享鏈接:http://bm7419.com/news1/317801.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、微信小程序、全網(wǎng)營銷推廣企業(yè)網(wǎng)站制作、ChatGPT、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司