Sun Java System Web Proxy Server 4.0.4 管理指南

執行緒數目

magnus.conf 檔案中的 RqThrottle 參數,用來指定 Proxy Server 可以處理的同步作業事件數目上限。預設值為 128。變更此值即可調節伺服器,減少所執行作業事件的延遲狀況。

伺服器為了計算同步請求數,會計算使用中的請求數目。新請求到達時伺服器會將該數字加上 1,完成請求時則會減掉 1。當新請求到達時,伺服器會檢查正在處理的請求是否到達了最大數目。如果已達到限制,則會等到使用中的請求數目低於數目上限時,才開始處理新的請求。

您可以檢視由 perfdump 產生的資料 SessionCreationInfo 部分,或檢視 proxystats.xml 資料,以監視同步請求數目。可以透過此資訊確定與執行緒的總數 (限制) 相比,同步 (尖峰) 請求的最大數目。下列資訊取自 perfdump 輸出:

SessionCreationInfo:
------------------------
Active Sessions          1
Keep-Alive Sessions      0
Total Sessions Created   48/128

[Active Sessions] 顯示目前在處理請求的階段作業數目 (請求處理執行緒)。[Keep-Alive Sessions] 與 [Active Sessions] 相似,但僅限於持續作用的連線。[Total Sessions Created] 顯示已建立的階段作業數及允許的階段作業數上限。這些值分別為 RqThrottle 值的最小值和最大值。


注意 – 注意 –

RqThrottleMin 是伺服器啟動時,所啟動的最小執行緒數目。預設值為 48。此參數也可以在 magnus.conf 檔案中設定,但依預設並不會顯示。


達到所配置的執行緒數目上限不一定是壞事。您不需要因此自動增加 RqThrottle 值。達到此限制意味著伺服器在尖峰負載期間需要這麼多數目的執行緒。只要伺服器可以及時處理請求,就表示伺服器的調校得當。不過,這個時候連線會在連線佇列等候,可能會因此造成佇列溢位。如果您的 perfdump 輸出經常顯示已建立的階段作業總數值常接近 RqThrottle 上限,可考慮提高執行緒限制。

合適的 RqThrottle 值應介於 100 到 500 之間,視負載而定。