W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
Squid是Linux系統(tǒng)中最為流行的一款高性能代理服務(wù)軟件,通常用作Web網(wǎng)站的前置緩存服務(wù),能夠代替用戶向網(wǎng)站服務(wù)器請(qǐng)求頁(yè)面數(shù)據(jù)并進(jìn)行緩存。簡(jiǎn)單來(lái)說(shuō),Squid服務(wù)程序會(huì)按照收到的用戶請(qǐng)求向網(wǎng)站源服務(wù)器請(qǐng)求頁(yè)面、圖片等所需的數(shù)據(jù),并將服務(wù)器返回的數(shù)據(jù)存儲(chǔ)在運(yùn)行Squid服務(wù)程序的服務(wù)器上。當(dāng)有用戶再請(qǐng)求相同的數(shù)據(jù)時(shí),則可以直接將存儲(chǔ)服務(wù)器本地的數(shù)據(jù)交付給用戶,這樣不僅減少了用戶的等待時(shí)間,還緩解了網(wǎng)站服務(wù)器的負(fù)載壓力。
Squid服務(wù)程序具有配置簡(jiǎn)單、效率高、功能豐富等特點(diǎn),它能支持HTTP、FTP、SSL等多種協(xié)議的數(shù)據(jù)緩存,可以基于訪問(wèn)控制列表(ACL)和訪問(wèn)權(quán)限列表(ARL)執(zhí)行內(nèi)容過(guò)濾與權(quán)限管理功能,還可以基于多種條件禁止用戶訪問(wèn)存在威脅或不適宜的網(wǎng)站資源,因此可以保護(hù)企業(yè)內(nèi)網(wǎng)的安全,提升用戶的網(wǎng)絡(luò)體驗(yàn),幫助節(jié)省網(wǎng)絡(luò)帶寬。
由于緩存代理服務(wù)不但會(huì)消耗服務(wù)器較多的CPU計(jì)算性能、內(nèi)存以及硬盤(pán)等硬件資源,同時(shí)還需要較大的網(wǎng)絡(luò)帶寬來(lái)保障數(shù)據(jù)的傳輸效率,由此會(huì)造成較大的網(wǎng)絡(luò)帶寬開(kāi)銷。因此國(guó)內(nèi)很多IDC或CDN服務(wù)提供商會(huì)將緩存代理節(jié)點(diǎn)服務(wù)器放置在二三線城市以降低運(yùn)營(yíng)成本。
在使用Squid服務(wù)程序?yàn)橛脩籼峁┚彺娲矸?wù)時(shí),具有正向代理模式和反向代理模式之分。
所謂正向代理模式,是指讓用戶通過(guò)Squid服務(wù)程序獲取網(wǎng)站頁(yè)面等資源,以及基于訪問(wèn)控制列表(ACL)功能對(duì)用戶訪問(wèn)網(wǎng)站行為進(jìn)行限制,在具體的服務(wù)方式上又分為標(biāo)準(zhǔn)代理模式與透明代理模式。標(biāo)準(zhǔn)正向代理模式是把網(wǎng)站數(shù)據(jù)緩存到服務(wù)器本地,提高數(shù)據(jù)資源被再次訪問(wèn)時(shí)的效率,但是用戶在上網(wǎng)時(shí)必須在瀏覽器等軟件中填寫(xiě)代理服務(wù)器的IP地址與端口號(hào)信息,否則默認(rèn)不使用代理服務(wù)。而透明正向代理模式的作用與標(biāo)準(zhǔn)正向代理模式基本相同,區(qū)別是用戶不需要手動(dòng)指定代理服務(wù)器的IP地址與端口號(hào),所以這種代理服務(wù)對(duì)于用戶來(lái)講是相對(duì)透明的。
使用Squid服務(wù)程序提供正向代理服務(wù)的拓?fù)淙鐖D16-1所示。局域網(wǎng)內(nèi)的主機(jī)如果想要訪問(wèn)外網(wǎng),則必須要通過(guò)Squid服務(wù)器提供的代理才行,這樣當(dāng)Squid服務(wù)器接收到用戶的指令后會(huì)向外部發(fā)出請(qǐng)求,然后將接收到的數(shù)據(jù)交還給發(fā)出指令的那個(gè)用戶,從而實(shí)現(xiàn)了用戶的代理上網(wǎng)需求。另外,從拓?fù)鋱D中也不難看出,企業(yè)中的主機(jī)要想上網(wǎng),就必須要經(jīng)過(guò)公司的網(wǎng)關(guān)服務(wù)器,既然這是一條流量的必經(jīng)之路,因此企業(yè)一般還會(huì)把Squid服務(wù)程序部署到公司服務(wù)器位置,并通過(guò)稍后講到的ACL(訪問(wèn)控制列表)功能對(duì)企業(yè)內(nèi)員工進(jìn)行上網(wǎng)審計(jì)及限制。
圖16-1 Squid服務(wù)程序提供正向代理服務(wù)
反向代理模式是指讓多臺(tái)節(jié)點(diǎn)主機(jī)反向緩存網(wǎng)站數(shù)據(jù),從而加快用戶訪問(wèn)速度。因?yàn)橐话銇?lái)講,網(wǎng)站中會(huì)普遍加載大量的文字、圖片等靜態(tài)資源,而且它們相對(duì)來(lái)說(shuō)都是比較穩(wěn)定的數(shù)據(jù)信息,當(dāng)用戶發(fā)起網(wǎng)站頁(yè)面中這些靜態(tài)資源的訪問(wèn)請(qǐng)求時(shí),我們可以使用Squid服務(wù)程序提供的反向代理模式來(lái)進(jìn)行響應(yīng)。而且,如果反向代理服務(wù)器中恰巧已經(jīng)有了用戶要訪問(wèn)的靜態(tài)資源,則直接將緩存的這些靜態(tài)資源發(fā)送給用戶,這不僅可以加快用戶的網(wǎng)站訪問(wèn)速度,還在一定程度上降低了網(wǎng)站服務(wù)器的負(fù)載壓力。
使用Squid服務(wù)程序提供反向代理服務(wù)的拓?fù)淙鐖D16-2所示。當(dāng)外網(wǎng)用戶嘗試訪問(wèn)某個(gè)網(wǎng)站時(shí),實(shí)際請(qǐng)求是被Squid服務(wù)器所處理的。反向代理服務(wù)器會(huì)將緩存好的靜態(tài)資源更快地交付給外網(wǎng)用戶,從而加快了網(wǎng)站頁(yè)面被用戶訪問(wèn)的速度。并且由于網(wǎng)站頁(yè)面數(shù)據(jù)中的靜態(tài)資源請(qǐng)求已被Squid服務(wù)器處理,因此網(wǎng)站服務(wù)器負(fù)責(zé)動(dòng)態(tài)數(shù)據(jù)查詢就可以了,也進(jìn)而降低了服務(wù)器機(jī)房中網(wǎng)站服務(wù)器的負(fù)載壓力。
圖16-2 Squid服務(wù)程序提供的反向代理模式
總結(jié)來(lái)說(shuō),正向代理模式一般用于企業(yè)局域網(wǎng)之中,讓企業(yè)用戶統(tǒng)一地通過(guò)Squid服務(wù)訪問(wèn)互聯(lián)網(wǎng)資源,這樣不僅可以在一定程度上減少公網(wǎng)帶寬的開(kāi)銷,而且還能對(duì)用戶訪問(wèn)的網(wǎng)站內(nèi)容進(jìn)行監(jiān)管限制,一旦內(nèi)網(wǎng)用戶訪問(wèn)的網(wǎng)站內(nèi)容與禁止規(guī)則相匹配,就會(huì)自動(dòng)屏蔽網(wǎng)站。反向代理模式一般是為大中型網(wǎng)站提供緩存服務(wù)的,它把網(wǎng)站中的靜態(tài)資源保存在國(guó)內(nèi)多個(gè)節(jié)點(diǎn)機(jī)房中,當(dāng)有用戶發(fā)起靜態(tài)資源的訪問(wèn)請(qǐng)求時(shí),可以就近為用戶分配節(jié)點(diǎn)并傳輸資源,因此在大中型網(wǎng)站中得到了普遍應(yīng)用。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: