|
架設(shè)一臺Web服務(wù)器已經(jīng)變得非常簡單了,尤其是在Windows平臺上,很多Web服務(wù)器軟件都有圖形化的安裝工具和圖形化的管理工具。然而,如何使得架設(shè)的Web服務(wù)器真正能達(dá)到承擔(dān)非常高的負(fù)載,對于Web服務(wù)器的系統(tǒng)管理員來講,卻仍然是一個不小的挑戰(zhàn)。
對于任何網(wǎng)站來講,其提供的內(nèi)容都可以分為靜態(tài)網(wǎng)頁或動態(tài)網(wǎng)頁兩種,由于網(wǎng)站可以提供動態(tài)內(nèi)容,整個網(wǎng)站的負(fù)載就不但包括Web服務(wù)器的負(fù)載,而且還要包括后端應(yīng)用軟件(CGI,PHP等),數(shù)據(jù)庫服務(wù)器的負(fù)載等,此時,如何提高整個站點的負(fù)載能力就相對復(fù)雜一些。通常的做法是使用垂直劃分的方法,將不同的功能劃分到不同的服務(wù)器上去,這是因為為了讓W(xué)eb服務(wù)器達(dá)到最佳的性能和負(fù)載能力,需要針對不同目的進(jìn)行調(diào)整服務(wù)器參數(shù)設(shè)置,提供靜態(tài)網(wǎng)頁的服務(wù)器和提供動態(tài)訪問的服務(wù)器有不同的要求。例如,提供CGI程序通常需要大量的CPU處理時間,而僅提供靜態(tài)網(wǎng)頁的服務(wù)器很少使用CPU,等等。
雖然越來越多的網(wǎng)站中,動態(tài)內(nèi)容變得非常重要,但是一個網(wǎng)站中大多數(shù)訪問還是對于靜態(tài)數(shù)據(jù)的訪問,例如,頁面中常用到的大量不同圖片都是靜態(tài)數(shù)據(jù)。而且,即使對于一個提供動態(tài)內(nèi)容Web服務(wù)器來講,它除了要滿足后端應(yīng)用程序的性能要求之外,其他需要注意的問題和提供靜態(tài)內(nèi)容的Web服務(wù)器是相同的。很多情況下,還會特別要求服務(wù)器能提供優(yōu)秀的靜態(tài)數(shù)據(jù)訪問能力,例如提供圖片、音樂、視頻片段的服務(wù)器。
在另一方面,對于訪問量較大的站點,通常使用會使用負(fù)載均衡的技術(shù),通過使用多臺服務(wù)器構(gòu)成的服務(wù)器集群來分擔(dān)負(fù)載。這種服務(wù)器集群或負(fù)載均衡的技術(shù)已經(jīng)相當(dāng)成熟,尤其對于大型網(wǎng)站,其應(yīng)用非常廣泛。這種方法中每臺服務(wù)器的功能相同,因此可以稱為水平劃分的方式。
一個真正的高負(fù)載站點通常綜合利用以上的方法,將負(fù)載分配到不同的服務(wù)器上,以便解決服務(wù)器的負(fù)載問題。然而,對網(wǎng)站的訪問隨機性相當(dāng)大,并且還會隨著一個網(wǎng)站內(nèi)容的豐富,訪問量會迅速增加。因此,一個系統(tǒng)管理員就需要了解Web站點真正的負(fù)載能力,以便能夠滿足不斷增加的訪問者的訪問。
|