內容型遞送

重要事項:內容型遞送 (CBR) 元件適用於所有支援的平台,但有下列例外情形:

當與 Application Server Caching Proxy 元件一起運作時,Application Server Load Balancer 元件可讓您將要求配送給管理不同內容的多部後端伺服器。 (請參閱簡介 WebSphere Application Server Edge Component,以取得這些 Edge Components 的簡介。)

如果 Load Balancer 的「內容型遞送 (CBR)」元件與 Caching Proxy 安裝在一起,HTTP 要求可以根據 URL 或其他管理者決定的性質來遞送,不需要在所有後端伺服器上儲存相同的內容。

如果您的 Web 伺服器需要執行若干不同的功能,或提供若干不同類型的服務,尤其適合使用 CBR。 例如,線上零售商的網站既需顯示它的型錄(其中大部分為靜態),也需要接受訂單,也就是執行「一般閘道介面 (CGI)」Script 之類的互動應用程式,來接受項目編號和客戶資訊。 一般而言,用兩組不同的機器來執行不同的功能,並利用 CBR 將不同類型的資料流量遞送至不同的機器,效率會比較好。 同樣地,企業也可以利用 CBR,將付費要求遞送至功能較強的 Web 伺服器,提供比網站臨時訪客還要好的服務給付費客戶。

CBR 會根據您撰寫的規則來遞送要求。 最常見的類型是內容規則,會根據 URL 中的路徑名稱來引導要求。 例如,ABC 公司可以撰寫若干規則,將 URL http://www.abc.com/catalog_index.html 的要求引導到某一個伺服器叢集,並將 http://www.abc.com/orders.html 引導到另一個叢集。 另外,還有一些規則,根據傳送要求之用戶端的 IP 位址,或根據其他性質來遞送要求。 如需相關討論,請參閱《WebSphere Application Server Load Balancer 管理手冊》中之配置 CBR 及進階 Load Balancer 和 CBR 功能的章節。 如需規則的語法定義,請參閱《WebSphere Application Server Load Balancer 管理手冊》中的 CBR 規則類型附錄。

圖 12 描述一個簡式配置,其中 Load Balancer 的 CBR 元件和 Caching Proxy 一起安裝在標示 4 的同一部機器上,並將要求遞送至含有不同內容的三部內容主機(678)。 當在其中一部標示 1 之機器上運作的一般使用者要求 X 檔時,要求會穿越網際網路 (2),並透過企業的網際網路閘道 (3) 進入企業的內部網路。 Proxy 伺服器會截取要求,將它傳給相同機器上的 CBR 元件以剖析要求中的 URL,並判斷 X 檔是在內容主機 6 中。Proxy 伺服器會產生一個 X 檔的新要求,如果啟用其快取特性,則它會在主機 6 傳回檔案時,判斷檔案是否適合快取。 如果檔案可以快取,Proxy 伺服器會先將副本儲存在它的快取 (5) 中,然後才將它傳給一般使用者。 其他檔案也用相同的方式來遞送:Y 檔的要求會遞送至內容主機 7,而 Z 檔的要求會遞送至內容主機 8

圖 12. 利用 CBR 遞送 HTTP 要求
此圖描述利用 CBR 遞送 HTTP 要求

圖 13 描述一個可能適合線上零售商的較複雜配置。 Load Balancer 的 CBR 元件和 Proxy 伺服器一起安裝在標示 4 的機器上,並將要求遞送至兩部 Load Balancer 機器。 標示 6 的 Load Balancer 機器進行含有零售商型錄大部分靜態內容之內容主機叢集 (8) 的負載平衡,而標示 7 的 Load Balancer 進行處理訂單之 Web 伺服器叢集 (9) 的負載平衡。

當在其中一部標示 1 之機器上運作的一般使用者存取零售商型錄的 URL 時,要求會穿越網際網路 (2),並透過企業的網際網路閘道 (3) 進入企業的內部網路。 Proxy 伺服器會截取要求,將它傳給相同機器上的 CBR 元件以剖析 URL,並判斷這個 URL 是由標示 6 的 Load Balancer 機器處理。 Proxy 伺服器會建立一個新的存取要求並將要求傳給 Load Balancer,由它來判斷哪部標示 8 的內容主機目前最能夠處理要求(根據您定義的準則)。 這個內容主機會略過 Load Balancer,將型錄內容直接傳給 Proxy 伺服器。 如同前述範例,Proxy 伺服器會判斷內容是否可快取,且會將內容適時儲存在其快取 (5) 中。

一般使用者可能是透過型錄中的超鏈結,藉由存取零售商的訂購 URL 來下訂單。 這個要求會經歷與型錄存取要求相同的路徑,不過,機器 4 上的 CBR 元件會將要求遞送至標示 7 的 Load Balancer 機器。Load Balancer 會將要求轉遞到標示 9 的 Web 伺服器,並由其中最適合的一部伺服器來直接回覆 Proxy 伺服器。 由於訂購資訊通常是動態產生,Proxy 伺服器很可能不會快取這項資訊。

圖 13. 利用 CBR 遞送之 HTTP 要求的負載平衡
此圖描述利用 CBR 遞送之 HTTP 要求的負載平衡

Load Balancer 的 CBR 功能支援 cookie 親緣性。 這表示處理一般使用者第一個要求的伺服器身分,會記錄在伺服器回應所包含的特殊資料封包 (cookie) 中。 當一般使用者在您定義的時段內再次存取相同的 URL,且要求含有 cookie 時,CBR 會將要求遞送至原始伺服器,而不是重新套用它的標準規則。 如果伺服器儲存了一般使用者的相關資訊,且無需再次取得該項資訊(如:信用卡號碼),這通常可以改進回應時間。