Sun Java System Web Proxy Server 4.0.4 管理指南

使用代理伺服器陣列

分散式快取的代理伺服器陣列,可讓多部代理伺服器的運作方式如同單一快取。陣列中的每部代理伺服器將會包含不同的快取 URL,這些 URL 可以由瀏覽器或下游代理伺服器擷取。代理伺服器陣列可避免多部代理伺服器常有的快取重複問題。透過基於雜湊的路由,代理伺服器陣列可將請求路由至代理伺服器陣列中正確的快取。

代理伺服器陣列也提供增量延展性功能。如果決定將另一個代理伺服器增加到您的代理伺服器陣列,每個成員的快取並不會失效。在每個成員的快取中,只有 1/n 的 URL 會重新指定給其他成員,其中 n 是陣列中代理伺服器的數目。

透過代理伺服器陣列路由

對於每個透過代理伺服器陣列的請求,雜湊函數會為陣列中的每個代理伺服器指定一個分數,此分數是以所請求的 URL、代理伺服器名稱與代理伺服器的負載因子為依據。以後請求就會路由至分數最高的代理伺服器。

因為 URL 請求可能來自用戶端與代理伺服器,所以透過代理伺服器陣列的路由有兩種類型:用戶端至代理伺服器路由與代理伺服器至代理伺服器路由。

在用戶端至代理伺服器路由中,用戶端會使用代理伺服器自動配置 (PAC) 機制來決定應該通過哪部代理伺服器。然而,用戶端不是使用標準的 PAC 檔案,而是使用一種計算雜湊演算法的特殊 PAC 檔案,以決定所請求之 URL 的適當路由。圖 12–4 顯示用戶端至代理伺服器路由。在這張圖中,代理伺服器陣列的每個成員會載入並輪詢主代理伺服器,以判斷 PAT 檔案是否有更新。一旦用戶端擁有 PAC 檔案,如果配置變更,用戶端只要再次下載此檔案即可。一般而言,用戶端將會在重新啟動時下載 PAC 檔案。

代理伺服器可透過使用管理介面決定的「代理伺服器陣列成員身份表格 (PAT)」規格來自動產生特殊的 PAC 檔案。

圖 12–4 用戶端至代理伺服器路由

顯示用戶端至代理伺服器路由的圖表。

在代理伺服器至代理伺服器路由中,代理伺服器會使用 PAT (代理伺服器陣列表格) 檔案 (而非用戶端所使用的 PAC 檔案) 來計算雜湊演算法。PAT 檔案是 ASCII 檔案,它包含代理伺服器陣列的相關資訊,包括代理伺服器的機器名稱、IP 位址、連接埠、負載因子與快取大小等。在伺服器計算雜湊演算法時,使用 PAT 檔案比使用 PAC 檔案 (必須在執行階段解譯的 JavaScript 檔案) 有效率得多。然而,大部分用戶端無法識別 PAT 檔案格式,因此必須使用 PAC 檔案。圖 12–5 顯示代理伺服器至代理伺服器路由。

PAT 檔案是在代理伺服器陣列中的主代理伺服器建立。代理伺服器管理員必須決定要使用哪部代理伺服器做為主代理伺服器。管理員可以從這一部主代理伺服器變更 PAT 檔案。以後代理伺服器陣列的所有其他成員,就可以手動或自動輪詢主代理伺服器以取得這些變更。您可以將每個成員配置為自動根據這些變更產生 PAC 檔案。

您也可以將代理伺服器陣列鏈接在一起,以進行階層式路由。若某部代理伺服器透過上游代理伺服器陣列以路由內送請求,則該上游代理伺服器陣列即稱為父系陣列。換句話說,若用戶端向代理伺服器 X 請求文件,且代理伺服器 X 沒有該文件,它會將請求傳送到代理伺服器陣列 Y,而非將請求直接傳送到遠端伺服器。因此代理伺服器陣列 Y 是父系陣列。

圖 12–5 中,代理伺服器陣列 1 是代理伺服器陣列 2 的父系陣列。代理伺服器陣列 2 的成員會載入並進行輪詢,以確定父系代理伺服器陣列的 PAT 檔案是否有更新。通常,該成員會輪詢父系陣列中的主代理伺服器。所請求 URL 的雜湊演算法,要以所下載的 PAT 檔案來計算。接著,代理伺服器陣列 2 中的成員會從代理伺服器陣列 1 中最高分數的代理伺服器,擷取所請求的 URL。在這張圖中,對於用戶端所請求的 URL,代理伺服器 B 具有最高的分數。

圖 12–5 代理伺服器至代理伺服器路由

顯示代理伺服器至代理伺服器路由的圖表。

設定代理伺服器陣列的一般步驟如下所示。

從主代理伺服器執行下列步驟:

  1. 建立代理伺服器陣列。

    如需有關建立成員清單的更多資訊,請參閱建立代理伺服器陣列成員清單

  2. 從您的 PAT 檔案產生 PAC 檔案。

    只有在使用用戶端至代理伺服器路由時,才需要產生 PAC 檔案。如需更多資訊,請參閱使用 PAT 檔案產生 PAC 檔案

  3. 配置陣列的主成員。如需更多資訊,請參閱配置代理伺服器陣列成員

  4. 啟用透過代理伺服器陣列路由。如需更多資訊,請參閱啟用透過代理伺服器陣列路由

  5. 建立 PAT 對映,將 URL /pat 對映到 PAT 檔案。

  6. 啟用您的代理伺服器陣列。

    如需更多資訊,請參閱啟用或停用代理伺服器陣列

從每個非主代理伺服器執行下列步驟:

  1. 配置陣列的非主成員。

    如需更多資訊,請參閱配置代理伺服器陣列成員

  2. 啟用透過代理伺服器陣列路由。

    如需更多資訊,請參閱啟用透過代理伺服器陣列路由

  3. 啟用您的代理伺服器陣列。

    如需更多資訊,請參閱啟用或停用代理伺服器陣列


    備註 –

    若代理伺服器陣列將透過父系陣列路由,則還必須啟用該父系陣列,並配置每個成員透過父系陣列路由來取得所需的 URL。如需更多資訊,請參閱透過父系陣列路由


建立代理伺服器陣列成員清單

您應該只從陣列的主代理伺服器,來建立與更新代理伺服器陣列成員清單。您只需要建立代理伺服器陣列成員清單一次,但可隨時修改。建立代理伺服器陣列成員清單時會產生 PAT 檔案,可將此檔案分發給陣列中的所有代理伺服器以及所有下游代理伺服器。


備註 –

若要對代理伺服器陣列成員清單進行變更或增加,只能透過陣列中的主代理伺服器來執行。陣列中的所有其他成員只能讀取成員清單。


Procedure建立代理伺服器陣列成員清單

  1. 存取 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [Configure Proxy Array] 連結。

    此時會顯示 [Configure Proxy Array] 頁面。

  3. 在 [Array name] 欄位中,鍵入陣列的名稱。

  4. 在 [Reload Configuration Every] 欄位中,鍵入每次針對 PAT 檔案進行輪詢的相隔分鐘數。

  5. 按一下 [Array Enabled] 核取方塊。

  6. 按一下 [Create] 按鈕。

    建立代理伺服器陣列之後,[Create] 按鈕會變更為 [OK] 按鈕。


    備註 –

    開始增加成員到成員清單之前,請務必按一下 [OK]。


  7. 按一下 [OK]。

  8. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  9. 為代理伺服器陣列中的每個成員提供下列資訊,然後按一下 [OK]。

    必須先增加主成員,才能增加其他成員。

    • Name。您要增加到成員清單之代理伺服器的名稱

    • IP Address。您要增加到成員清單之代理伺服器的 IP 位址

    • Port。此為成員用來輪詢 PAT 檔案的連接埠。

    • Load Factor。此整數表示應透過此成員進行路由的相關負載。

    • Status。成員的狀態。此值可以是 [on] 或 [off]。若停用某個代理伺服器陣列成員,將會透過其他成員重新路由該成員的請求。


    備註 –

    為要增加的每個代理伺服器陣列成員鍵入資訊之後,請務必按一下 [OK]。


  10. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  11. 按一下 [Restart Proxy Server] 按鈕以套用變更

編輯代理伺服器陣列成員清單資訊

您可以隨時變更代理伺服器陣列成員清單中的成員資訊。您只能從主代理伺服器編輯代理伺服器陣列成員清單。


備註 –

若要對代理伺服器陣列成員清單進行變更或增加,只能透過陣列中的主代理伺服器來執行。若從陣列中的其他成員修改此清單,所有變更都會遺失。


Procedure編輯成員清單資訊

  1. 存取 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [Configure Proxy Array] 連結。

    此時會顯示 [Configure Proxy Array] 頁面。

  3. 在 [Member List] 中,選取您要編輯之成員旁的單選按鈕。

  4. 按一下 [Edit] 按鈕。

    此時會顯示 [Configure Proxy Array Member] 頁面。

  5. 編輯相關資訊。

  6. 按一下 [OK]。

  7. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  8. 按一下 [Restart Proxy Server] 按鈕以套用變更。


    備註 –

    若要讓變更生效並將變更分發給代理伺服器陣列中的成員,請更新 [Configure Proxy Array] 頁面上的 [Configuration ID],然後按一下 [OK]。若要更新配置 ID,只需將 ID 加 1 即可。


刪除代理伺服器陣列成員

刪除代理伺服器陣列成員會將它們從代理伺服器陣列移除。您只能從主代理伺服器刪除代理伺服器陣列成員。

Procedure刪除代理伺服器陣列成員

  1. 存取 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [Configure Proxy Array] 連結。

    此時會顯示 [Configure Proxy Array] 頁面。

  3. 在 [Member List] 中,選取您要刪除之成員旁的單選按鈕。

  4. 按一下 [Delete] 按鈕。


    備註 –

    若要讓變更生效並將變更分發給代理伺服器陣列中的成員,請更新 [Configure Proxy Array] 頁面上的 [Configuration ID],然後按一下 [OK]。若要更新配置 ID,只需將其增加 1。


  5. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  6. 按一下 [Restart Proxy Server] 按鈕以套用變更

配置代理伺服器陣列成員

只需對代理伺服器陣列中的每個成員進行一次配置,且必須從成員本身進行配置。無法從其他成員處配置。還必須配置主代理伺服器。

Procedure配置代理伺服器陣列的每個成員

  1. 存取 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [Configure Proxy Array Member] 連結。

    此時會顯示 [Configure Proxy Array Member] 頁面。

  3. 在 [Proxy Array] 區段,選取適當的單選按鈕以指定成員是否需要針對 PAT 檔案進行輪詢。

    • Non-Master Member。若您要配置的成員不是主代理伺服器,請選取此選項。主代理伺服器以外的所有代理伺服器陣列成員都必須針對 PAT 檔案進行輪詢,以便從主代理伺服器擷取該檔案。

    • Master Member。若您要配置主代理伺服器,請選取此選項。若您要配置主代理伺服器,PAT 檔案將位於本機,因此不需要輪詢。

  4. 在 [Poll Host] 欄位中,鍵入要向其輪詢 PAT 檔案的主代理伺服器名稱。

  5. 在 [Port] 欄位中,鍵入主代理伺服器用來接受 HTTP 請求的連接埠。

  6. 在 [URL] 欄位中,鍵入主代理伺服器上之 PAT 檔案的 URL。若已在主代理伺服器上建立 PAT 對映,以將 PAT 檔案對映到 URL /pat,則應該在 [URL] 欄位中鍵入 /pat

  7. (可選) 在 [Headers File] 欄位中,鍵入檔案的完整路徑,此檔案包含必須與 PAT 檔案的 HTTP 請求一起傳送的所有特殊標頭,例如認證資訊。

  8. 按一下 [OK]。

  9. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  10. 按一下 [Restart Proxy Server] 按鈕以套用變更

啟用透過代理伺服器陣列路由

Procedure啟用透過代理伺服器陣列路由

  1. 存取 Server Manager,然後按一下 [Routing] 標籤。

  2. 按一下 [Set Routing Preferences] 連結。

    此時會顯示 [Set Routing Preferences] 頁面。

  3. 從下拉式清單中選取資源,或按一下 [ Regular Expression] 按鈕,然後鍵入常規表示式並按一下 [OK]。

  4. 選取 [Route Through] 選項。

  5. 選取代理伺服器陣列或父系陣列的核取方塊。

    只有在配置的代理伺服器是代理伺服器陣列的成員時,才能啟用代理伺服器陣列路由。只有當父系陣列存在時,才能啟用父系路由。上述兩個路由選項彼此獨立。

  6. 若選擇透過代理伺服器陣列路由,且想要將請求重新導向到另一個 URL,請選取 [Redirect] 核取方塊。

    重新導向表示若代理伺服器陣列的某個成員收到不應由它服務的請求,則會告知用戶端應連絡哪部代理伺服器來處理該請求。

  7. 按一下 [OK]。

  8. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  9. 按一下 [Restart Proxy Server] 按鈕以套用變更。

啟用或停用代理伺服器陣列

若不是透過代理伺服器陣列進行路由,則停用代理伺服器陣列選項之前,應先確定所有用戶端都使用特殊 PAC 檔案以使路由正確。若停用父系陣列選項,則應該在 [Set Routing Preferences] 頁面上設定有效的替代路由選項,例如明確的代理伺服器或直接連線。

Procedure啟用或停用代理伺服器陣列

  1. 存取 Server Manager,然後按一下 [Preferences] 標籤。

  2. 按一下 [Configure System Preferences] 連結。

    此時會顯示 [Configure System Preferences] 頁面。

  3. 啟用或停用代理伺服器陣列。

    • 若要啟用代理伺服器陣列,請按一下要啟用之陣列類型或特定陣列的 [Yes] 選項:一般代理伺服器陣列或父系陣列。

    • 若要停用代理伺服器陣列,請按一下 [No]。

  4. 按一下 [OK]。

  5. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  6. 按一下 [Restart Proxy Server] 按鈕以套用變更。

重新導向代理伺服器陣列中的請求

若選擇透過代理伺服器陣列路由,則必須指定是否要將請求重新導向到另一個 URL。重新導向表示若代理伺服器陣列的某個成員收到不應由它服務的請求,則會告知用戶端應連絡哪部代理伺服器來處理該請求。

使用 PAT 檔案產生 PAC 檔案

因為大部分用戶端都無法識別 PAT 檔案格式,所以用戶端至代理伺服器路由中的用戶端會使用代理伺服器自動配置 (PAC) 機制,來接收應該通過哪個代理伺服器的相關資訊。然而,用戶端不會使用標準的 PAC 檔案,而是使用源自 PAT 檔案的特殊 PAC 檔案。這個特殊 PAC 檔案會計算雜湊演算法,以決定所請求之 URL 的適當路由。

您可以使用 PAT 檔案手動或自動產生 PAC 檔案。若從代理伺服器陣列的特定成員處手動產生 PAC 檔案,該成員將會根據目前 PAT 檔案中的資訊立即重新產生 PAC 檔案。若將代理伺服器陣列成員配置為自動產生 PAC 檔案,則成員在每次偵測到 PAT 檔案有修改版本時,就會自動重新產生檔案。


備註 –

若您沒有使用代理伺服器的代理伺服器陣列功能,請使用 [Create/Edit Autoconfiguration File] 頁面來產生 PAC 檔案。如需更多資訊,請參閱第 17 章, 使用用戶端自動配置檔案


Procedure使用 PAT 檔案手動產生 PAC 檔案

PAC 檔案只能從主代理伺服器產生。

  1. 存取主代理伺服器的 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [Configure Proxy Array] 連結。

    此時會顯示 [Configure Proxy Array] 頁面。

  3. 按一下 [Generate PAC] 按鈕。

    此時會顯示 [PAC Generation] 頁面。

  4. 若要在 PAC 檔案中使用自訂邏輯,請在 [Custom logic file] 欄位中鍵入包含自訂邏輯 (要在 PAC 檔案產生程序執行期間加入的邏輯) 之檔案的名稱。

    此邏輯會插入 FindProxyForURL 函數中,代理伺服器陣列選取邏輯之前。此函數通常用於不需要通過代理伺服器陣列的本機請求。

    若已在配置代理伺服器陣列成員時提供自訂邏輯檔案,此欄位會自動寫入該資訊。您可以在此編輯自訂邏輯檔案名稱。

  5. 在 [Default Route] 欄位中,鍵入陣列中的代理伺服器無法使用時,用戶端應採用的路由。

    若已在配置代理伺服器陣列成員時提供預設路由,此欄位會自動寫入該資訊。您可以在此編輯預設路由。

  6. 按一下 [OK]。

  7. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  8. 按一下 [Restart Proxy Server] 按鈕以套用變更。

Procedure自動產生 PAC 檔案

  1. 存取 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [Configure Proxy Array Member] 連結。

    此時會顯示 [Configure Proxy Array Member] 頁面。

  3. 選取 [Auto-generate PAC File] 核取方塊。

  4. 若要在 PAC 檔案中使用自訂邏輯,請在 [Custom logic file] 欄位中鍵入包含自訂邏輯 (要在 PAC 檔案產生程序執行期間加入的邏輯) 之檔案的名稱。

    將此邏輯插入 FindProxyFor URL 函數中代理伺服器陣列選取邏輯之前。

    若已在配置代理伺服器陣列時提供並儲存自訂邏輯檔案,此欄位會自動寫入該資訊。您可以在此編輯自訂邏輯檔案名稱。

  5. 在 [Default Route] 欄位中,鍵入陣列中的代理伺服器無法使用時用戶端應採用的路由。

    若已在配置代理伺服器陣列時提供預設路由,此欄位會自動寫入該資訊。您可以編輯預設路由。

  6. 按一下 [OK]。

  7. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  8. 按一下 [Restart Proxy Server] 按鈕以套用變更。

透過父系陣列路由

您可以將代理伺服器或代理伺服器陣列成員配置為透過上游父系陣列路由,而非直接連線到遠端伺服器。

Procedure透過父系陣列路由

  1. 啟用父系陣列。

    如需更多資訊,請參閱啟用或停用代理伺服器陣列

  2. 啟用透過父系陣列路由。

    如需更多資訊,請參閱啟用透過代理伺服器陣列路由

  3. 存取 Server Manager,然後按一下 [Caching] 標籤。

  4. 按一下 [Configure Proxy Array Member] 連結。

    此時會顯示 [Configure Proxy Array Member] 頁面。

  5. 在頁面中 [Parent Array] 區段的 [Poll Host] 欄位裡,鍵入父系陣列中代理伺服器的主機名稱,以便針對 PAT 檔案進行輪詢。

    此代理伺服器通常是該父系陣列的主代理伺服器。

  6. 在頁面中 [Parent Array] 區段的 [Port] 欄位,鍵入要針對 PAT 檔案進行輪詢的父系陣列中代理伺服器的連接埠號。

  7. 在 [URL] 欄位中,鍵入主代理伺服器之 PAT 檔案的 URL。

    若已在主代理伺服器上建立 PAT 對映,請在 [URL] 欄位中鍵入該對映。

  8. (可選) 在表單上 [Parent Array] 區段的 [Headers File] 欄位中,鍵入檔案的完整路徑,此檔案包含必須與 PAT 檔案的 HTTP 請求一起傳送的所有特殊標頭,例如認證資訊。

    此欄位是選擇性的。

  9. 按一下 [OK]。

  10. 按一下 [Restart Required]。

    此時會顯示 [Apply Changes] 頁面。

  11. 按一下 [Restart Proxy Server] 按鈕以套用變更。

檢視父系陣列資訊

若您的代理伺服器陣列是透過父系陣列進行路由,則需要父系陣列成員的相關資訊。 父系陣列會以 PAT 檔案形式傳送此資訊。

Procedure檢視父系陣列資訊

  1. 存取 Server Manager,然後按一下 [Caching] 標籤。

  2. 按一下 [View Parent Array Configuration] 連結。

    此時會顯示 [View Parent Array Configuration] 頁面。

  3. 檢視該資訊。