了解最新公司動(dòng)態(tài)及行業(yè)資訊
1.1簡(jiǎn)要說(shuō)明
?是德國(guó)主導(dǎo)的開源Web服務(wù)器軟件,內(nèi)存開銷極低,CPU占用率低,性能好,模塊豐富。支持、CGI、Auth、輸出壓縮()、URL重寫、別名等重要功能。
它的使用方式是在運(yùn)行 PHP 時(shí),會(huì)使用很少的 PHP 進(jìn)程來(lái)響應(yīng)大量的并發(fā)。
1.2 優(yōu)點(diǎn)
1)從穩(wěn)定性的角度來(lái)看,CGI是由一個(gè)獨(dú)立的進(jìn)程池運(yùn)行的。如果單個(gè)進(jìn)程死了,系統(tǒng)可以很容易地丟棄它,然后重新分配一個(gè)新進(jìn)程來(lái)運(yùn)行邏輯;
2)從安全的角度來(lái)看,它完全獨(dú)立于主機(jī),再怎么down也不會(huì)壞掉;
3)從性能上看,動(dòng)態(tài)邏輯處理與它分離,重負(fù)載的IO處理留給宿主機(jī),讓宿主機(jī)專注于IO。對(duì)于一個(gè)普通的動(dòng)態(tài)網(wǎng)頁(yè),邏輯處理可能只是一個(gè)小部分,大量圖片等靜態(tài)IO處理根本不需要邏輯程序的參與(注意1)
4)在可擴(kuò)展性方面,它是一個(gè)中立的技術(shù)標(biāo)準(zhǔn),可以完全支持用任何語(yǔ)言(php、java、...)編寫的處理程序
1.3 支持的操作系統(tǒng)
2、
2.1 簡(jiǎn)要說(shuō)明
?是世界上排名第一的網(wǎng)絡(luò)服務(wù)器。根據(jù)調(diào)查,全球超過(guò) 50% 的網(wǎng)絡(luò)服務(wù)器正在使用中。
?它是一種基于流程的結(jié)構(gòu)。進(jìn)程比線程消耗更多的系統(tǒng)開銷,不適合多處理器環(huán)境。因此,在擴(kuò)展網(wǎng)站時(shí),通常是增加服務(wù)器或擴(kuò)展集群節(jié)點(diǎn),而不是增加處理。設(shè)備。Yahoo!、W3、Times等世界上很多著名的網(wǎng)站都是產(chǎn)品。
2.2 優(yōu)點(diǎn)
2.3 支持的操作系統(tǒng)
3、NGINX
3.1簡(jiǎn)要說(shuō)明
? Nginx 是俄羅斯人編寫的一個(gè)非常輕量級(jí)的 HTTP 服務(wù)器。Nginx,讀作“X”,是一個(gè)高性能的HTTP和反向代理服務(wù)器,同時(shí)也是一個(gè)IMAP/POP3/SMTP代理服務(wù)器。Nginx 是由俄羅斯伊戈?duì)枮槎砹_斯訪問(wèn)量第二大的 .ru 網(wǎng)站開發(fā)的。Nginx是一個(gè)輕量級(jí)的Web服務(wù)器/反向代理服務(wù)器和電子郵件(IMAP/POP3)代理服務(wù)器服務(wù)器運(yùn)維,在類BSD協(xié)議下發(fā)布。它的特點(diǎn)是內(nèi)存少,并發(fā)能力強(qiáng)。,其實(shí)并發(fā)nginx的能力在同類型的web服務(wù)器中確實(shí)是比較好的,中國(guó)大陸nginx網(wǎng)站的用戶包括:百度、京東、新浪、網(wǎng)易、騰訊、淘寶等。
Nginx 是用事件驅(qū)動(dòng)(epoll)的方式編寫的,所以性能非常好,同時(shí)也是一個(gè)非常高效的反向代理和負(fù)載均衡。研究表明,它可以支持多達(dá) 50,000 個(gè)并發(fā)連接。. 它具有匹配的性能,沒(méi)有內(nèi)存泄漏問(wèn)題,并且它有一些問(wèn)題并且很長(zhǎng)時(shí)間沒(méi)有更新。但是 Nginx 不支持 cgi 操作,因?yàn)樗梢詼p少一些程序漏洞。所以必須有一種方法來(lái)執(zhí)行PHP程序。
3.2優(yōu)點(diǎn)
3.3 操作系統(tǒng)
3.4 推薦架構(gòu)
Nginx作為前端的web緩存系統(tǒng),通常有如下架構(gòu)
這種結(jié)構(gòu)的優(yōu)點(diǎn):
可以使用 nginx 前端進(jìn)行很多復(fù)雜的配置服務(wù)器運(yùn)維,這些配置以前在 Squid 中是不可能做的或者很麻煩的,比如目錄防盜鏈。nginx前端可以直接轉(zhuǎn)發(fā)一些不需要緩存的請(qǐng)求。因?yàn)閚ginx的效率比squid要高,所以在某些情況下,可以利用nginx的緩存來(lái)減輕squid的壓力。可以實(shí)現(xiàn)url hash等分配策略,前端可以開啟gzip壓縮,這樣后面的squid緩存就是純未壓縮的文檔,可以避免很多不必要的穿透。因?yàn)閚ginx比較穩(wěn)定,lvs不需要經(jīng)常調(diào)整,可以通過(guò)nginx調(diào)整。squid默認(rèn)打開的文件數(shù)是1024個(gè)以上,但是要處理的請(qǐng)求也不少。可以開啟nginx的日志功能代替squid,讓url在實(shí)時(shí)流量統(tǒng)計(jì)中準(zhǔn)確定位,不用再用低效的grep過(guò)濾。因?yàn)閚ginx的負(fù)載能力比squid高,所以在使用lvs分流的時(shí)候不需要特別均衡的分布,單點(diǎn)故障的概率比較低。
nginx和squid搭建的web服務(wù)器前端系統(tǒng)架構(gòu):
前端lvs和squid,按照安裝方法,打開epoll,復(fù)制配置文件,基本上問(wèn)題不大。
這個(gè)架構(gòu)和架構(gòu)的區(qū)別也是關(guān)鍵點(diǎn):加一個(gè)一級(jí)中層代理,中層代理的好處太多了:
gzip壓縮:可以通過(guò)nginx進(jìn)行壓縮,這樣后臺(tái)應(yīng)用服務(wù)器,無(wú)論是resin,甚至是iis還是其他怪異的服務(wù)器,都不必考慮壓縮的功能。負(fù)載均衡和故障屏蔽:nginx可以作為負(fù)載均衡代理,具有故障屏蔽功能,所以基于目錄甚至正則表達(dá)式來(lái)制定負(fù)載均衡策略就成了一個(gè)小案例。運(yùn)維管理便捷,可針對(duì)各種情況制定靈活的方案。明確權(quán)限:這臺(tái)機(jī)器是不編寫程序的維護(hù)者的責(zé)任。程序員一般不需要管理這臺(tái)機(jī)器,所以如果出現(xiàn)問(wèn)題,很容易找到合適的人。對(duì)于應(yīng)用服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器,最好從維護(hù)者的視線中消失。我的目標(biāo)是這些服務(wù)能跑多久就跑多久,其他的一切都可以在外部處理。3種WEB服務(wù)器比較
以下是三個(gè) Web 服務(wù)器的一些比較:
從上述分析比較中建議的一種選擇是:
稍后我會(huì)分享更多和 DBA 的內(nèi)容。有興趣的朋友可以關(guān)注一下~
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)