本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

在 SharePoint Server 2013 中設定要求管理員

 

適用版本:SharePoint Server 2013

上次修改主題的時間:2016-12-16

摘要:了解 SharePoint Server 2013 的要求管理員如何路由傳送及節流處理傳入要求,以協助提升效能並改善可用性。

要求管理員是 SharePoint Server 2013 的功能,可讓管理員管理傳入要求,以及決定 SharePoint Server 2013 路由傳送這些要求的方式。

本文內容:

要求管理員遇到要求時,會使用設定的規則執行下列工作:

  • 拒絕讓潛在有害的要求進入 SharePoint 伺服器陣列。

  • 將良好的要求路由傳送至可用的伺服器。

  • 手動最佳化效能。

管理員或自動程序提供給要求管理員的資訊可判斷路由傳送的要求是否有效。

若要了解如何使用效能資料規劃及管理 SharePoint Server 2013 環境的容量,請參閱<SharePoint Server 2013 的容量管理及調整大小概觀>。

下表說明要求管理員可解決的可能案例和解決方法。

 

範圍 案例 解決方法

可靠性和效能

將新要求路由傳送至低效能的 Web 前端會增加延遲並導致逾時。

要求管理員可以路由傳送至效能較佳的前端網頁伺服器,並讓低效能的前端網頁伺服器維持可用。

使用者的要求和 Bot 的要求之優先順序相等。

透過節流處理 Bot 的要求 (而不是服務使用者的要求) 來排列要求的優先順序。

管理性、權責劃分及容量規劃

SharePoint Server 失敗或一般回應緩慢,但是很難找出失敗或變慢的原因。

要求管理員可以將特定類型的所有要求 (例如搜尋、使用者設定檔或 Office Web Apps) 傳送至特定電腦。如此一來,當電腦失敗或變慢時,要求管理員即可找到問題。

所有前端網頁伺服器都必須能夠處理要求,因為要求可能傳送至任何前端網頁伺服器。

要求管理員可以將一或多個要求傳送至指定為處理要求的前端網頁伺服器。

擴充限制

硬體擴充受到負載平衡器的限制

要求管理員可以視需要執行應用程式路由並向外延展,讓負載平衡器可以在網路層級快速平衡負載。

要求管理員的工作是決定下列兩件事:SharePoint 伺服器陣列是否會接受要求;如果答案為「是」,則決定 SharePoint Server 傳送要求的目的地前端網頁伺服器為何。要求管理員的三個主要功能元件包括:「要求路由」、「要求節流及排列優先順序」,以及「要求負載平衡」。這些元件決定處理要求的方式。要求管理員會分開管理每一個 Web 應用程式的所有要求。由於要求管理員是 SharePoint Server 2013 Internet Information Services (IIS) 模組的一部分,因此只會影響 IIS 主控的要求。

收到新要求之後,要求管理員是 SharePoint 伺服器陣列中第一個執行的程式碼。雖然在前端網頁伺服器上安裝 SharePoint Server 時會一併安裝要求管理員,但是不會啟用要求管理服務。您可以使用 Start-SPServiceInstanceStop-SPServiceInstance Cmdlet 分別啟動及停止要求管理服務執行個體,或透過 SharePoint 管理中心網站上的「管理伺服器上的服務」 頁面加以啟動及停止。您可以使用 Set-SPRequestManagementSettings Windows PowerShell Cmdlet 的 RoutingEnabledThrottlingEnabled 參數變更要求管理員的內容。

注意事項 附註:
目前沒有可設定要求管理員內容的使用者介面。Windows PowerShell Cmdlet 是執行此工作的唯一方式。

要求管理員包含兩個受支援的部署模式:專用整合

圖 1 顯示專用模式部署。

圖 1:專用模式

專用的模式部署

一組專門用來管理要求的前端網頁伺服器。要求管理員的專用前端網頁伺服器位於其專屬的伺服器陣列中,介於硬體負載平衡器 (HLB) 與 SharePoint 伺服器陣列之間。HLB 將所有要求傳送至要求管理員的前端網頁伺服器。在這些前端網頁伺服器上執行的要求管理員會決定要傳送要求的目的地 SharePoint 前端網頁伺服器,然後再路由傳送要求。根據路由和節流規則,要求管理員可能會忽略某些要求,而不將這些要求傳送至其他伺服器。SharePoint 前端網頁伺服器會執行其處理要求的一般工作,然後透過執行要求管理員的前端網頁伺服器將回應傳回用戶端。

請注意,所有伺服器陣列都會設定為 SharePoint 伺服器陣列。圖 1 中的所有前端網頁伺服器為 SharePoint 前端網頁伺服器,每部前端網頁伺服器都會執行相同的工作。這些伺服器陣列的差異在於要求管理員的前端網頁伺服器已啟用要求管理員。

專用模式適用於備妥實體電腦的大型部署。為要求管理員建立不同伺服器陣列的功能提供兩項優點:要求管理員和 SharePoint 處理序不會競爭資源,且您可以擴充其中之一,而不需要兩者同時擴充。這讓您對每個角色的效能擁有更多控制權。

  • 要求管理員和 SharePoint 處理序不會競爭資源。

  • 您可以個別擴充每個伺服器陣列,因此對每個伺服器陣列的效能擁有更多控制權。

圖 2 顯示整合模式部署。

圖 2:整合模式

整合模式部署

在整合模式部署中,所有 SharePoint 前端網頁伺服器都會執行要求管理員。硬體負載平衡器將要求傳送至所有前端網頁伺服器。當前端網頁伺服器收到要求時,要求管理員會決定如何處理要求:

  • 允許在本機處理要求。

  • 將要求路由傳送至其他前端網頁伺服器。

  • 拒絕要求。

整合模式適用於尚未備妥許多實體電腦的小型部署。此模式可讓要求管理員和其餘 SharePoint Server 在所有電腦上執行。內部部署通常會採用此模式。

要求管理員可設定兩個部分:一般設定決策資訊。一般設定是準備要求管理員以供使用的參數,例如啟用或停用「要求路由」和「要求節流及排列優先順序」。決策資訊是路由和節流處理期間會用到的所有資訊,例如路由和節流規則。

注意事項 附註:
您可以設定伺服器陣列上的要求管理員及 Web 應用程式層級會出現的功能。

預設會啟用「要求路由」和「要求節流及排列優先順序」。您可以使用 Set-SPRequestManagementSettings Cmdlet 變更「要求路由」和「要求節流及排列優先順序」的內容,以及選取路由加權配置。

下表說明設定情況及所要使用的 Windows PowerShell 語法。

啟用路由和節流的 Windows PowerShell 範例

情況 Windows PowerShell 語法

為所有 Web 應用程式啟用路由和節流

Get-SPWebApplication | Set-SPRequestManagementSettings -RoutingEnabled $true -ThrottlingEnabled $true

為所有 Web 應用程式啟用使用靜態加權的路由

Get-SPWebApplication | Get-SPRequestManagementSettings | Set-SPRequestManagementSettings -RoutingEnabled $true -ThrottlingEnabled $false -RoutingWeightScheme Static

在某些情況下,特定要求適用的目的地可能是多部前端網頁伺服器。在此情況下,SharePoint Server 預設會隨機並一致地選取一部伺服器。

其中一個路由加權配置是「靜態加權路由」。在此配置中,靜態加權會與前端網頁伺服器建立關聯,讓要求管理員在選取程序期間一律採用較高的靜態加權。此配置可將更多加權分配給較強大的前端網頁伺服器,以降低較弱之前端網頁伺服器上的負載。每部前端網頁伺服器會有相關聯的靜態加權。加權值可以是任何整數值,其預設值為 1。小於 1 的值表示加權較低,而大於 1 的值表示加權較高。

另一個加權配置是「狀況加權」。在狀況加權路由中,偏好狀況分數接近零的前端網頁伺服器,因此狀況分數值較高的前端網頁伺服器會收到較少的要求。狀況加權從 0 執行到 10,其中 0 表示最佳狀況,因此會收到最多要求。根據預設,所有前端網頁伺服器都會設為狀況良好,因此會有相同的加權。採用 SharePoint 狀況分數的監視系統會將加權指派給伺服器,然後以要求回應的標題形式傳送狀況分數值。要求管理員使用相同的狀況分數,並儲存到本機記憶體中。

決策資訊會套用至路由目標、路由規則及節流規則。

要求路由決定為要求選取路由集區時可用的路由目標。路由目標的範圍目前僅限於前端網頁伺服器,但是要求管理員的設計也未排除路由傳送至應用程式伺服器。您可以使用設定資料庫自動維護一份伺服器陣列中的前端網頁伺服器清單。需要變更該清單的管理員 (通常會在專用模式下) 必須使用適當的路由 Cmdlet 取得、新增、設定及移除路由目標。

下表說明各種路由目標工作及所要使用的相關聯 Windows PowerShell 語法。

路由目標工作的 Windows PowerShell 範例

工作 Windows PowerShell 語法

傳回所有可用 Web 應用程式的路由目標清單。

Get-SPWebApplication | Get-SPRequestManagementSettings | Get-SPRoutingMachineInfo -Availability Available

新增指定 Web 應用程式的新路由目標。

注意事項 附註:
IIS記錄檔將會包含所有的 HTTP 要求。如需有關IIS記錄的詳細資訊,請參閱IIS 記錄
$web=Get-SPWebApplication -Identity <URL of web application>
$rm=Get-SPRequestManagementSettings -Identity $web
Add-SPRoutingMachineInfo -RequestManagementSettings $rm -Name <MachineName> -Availability Available

其中:

  • <Web 應用程式 URL> 是您新增路由目標的 Web 應用程式 URL。

  • <機器名稱> 是主控 Web 應用程式的伺服器名稱。

為指定 Web 應用程式編輯現有路由目標的可用性和靜態加權

$web=Get-SPWebApplication -Identity <URL of web application>
$rm=Get-SPRequestManagementSettings -Identity $web
$m=Get-SPRoutingMachineInfo -RequestManagementSettings $rm -Name <MachineName>
Set-SPRoutingMachineInfo -Identity $m -Availability Unavailable

其中:

  • <Web 應用程式 URL> 是您編輯現有路由目標之可用性和靜態加權的 Web 應用程式 URL。

從指定 Web 應用程式移除路由目標

注意事項 附註:
您無法移除伺服器陣列中的前端網頁伺服器。相反地,您可以使用 Set-SPRoutingMachineInfo Cmdlet 的 Availability 參數停止使用前端網頁伺服器。
$web=Get-SPWebApplication -Identity <URL of web application>
$rm=Get-SPRequestManagementSettings -Identity $web
$m=Get-SPRoutingMachineInfo -RequestManagementSettings $rm -Name <MachineName>
Remove-SPRoutingMachineInfo -Identity $M

其中:

  • <Web 應用程式 URL> 是您移除路由目標的來源 Web 應用程式 URL。

「要求路由」和「要求節流及排列優先順序」是使用規則規定許多動作的決策演算法。這些規則決定要求管理員處理要求的方式。

規則可分為兩類:路由規則節流規則,分別用於「要求路由」和「要求節流及排列優先順序」。路由規則比對準則,然後路由傳送至機器集區。節流規則比對準則,然後根據電腦的已知狀況分數進行節流處理。

要求處理是從要求管理員收到新要求,到要求管理員傳送回應給用戶端的這段期間內,連續發生的所有作業。

要求處理可分為下列元件:

  • 要求路由

  • 傳入要求處理常式

  • 要求節流及排列優先順序

  • 要求負載平衡

傳入要求處理常式的角色是判斷要求管理員是否應該處理要求。如果停用「要求節流及排列優先順序」且要求管理員佇列是空的,要求管理員會將要求導向至目前前端網頁伺服器上執行的 SharePoint Server。如果啟用「要求節流及排列優先順序」,「要求節流及排列優先順序」會決定要允許或拒絕目前前端網頁伺服器上的要求。

傳入要求處理常式的程序步驟如下:

  1. 決定要節流處理或路由傳送要求

  2. 對路由傳送的要求執行負載平衡演算法

  3. 將要求路由傳送至負載平衡器端點

「要求路由」和「要求節流及排列優先順序」只有在啟用時才會執行,且每個伺服器陣列會路由傳送一次。要求負載平衡器只有在要求判斷為可路由時才會執行。只有在必須將要求傳送至其他前端網頁伺服器時,才會執行傳出要求處理常式。傳出要求處理常式的角色是將要求傳送至選取的前端網頁伺服器、等候回應,然後將回應傳回來源。

要求路由的角色是選取要路由傳送要求的前端網頁伺服器。透過不定義任何路由規則,可輕鬆使用路由配置隨機選取可用的前端網頁伺服器。

要求路由的演算法是由下列兩部分來定義:要求規則比對和前端網頁伺服器選擇。

每一個規則都有一或多個對應條件,這些對應條件是由下列項目所組成:符合內容、符合類型及符合值。

下表說明不同類型的符合內容和符合類型:

 

符合內容 符合類型

主機名稱

RegEx

URL

等於

連接埠號碼

開始於

MIME 類型

結束於

例如,管理員可使用下列對應條件來比對 http://contoso 要求:符合內容=URL;符合值= http://contoso;符合類型=RegEx

前端網頁伺服器選擇使用所有路由規則,而不管其是否符合指定要求。符合的規則會包含機器集區,而要求會將平衡的負載傳送至任何相符規則之機器集區中的任何機器。如果不符合任何要求,則會將平衡的負載傳送至任何可用的路由目標。

針對使用狀況型監視系統的路由要求,「要求路由及排列優先順序」的角色是將路由集區減少至具有良好狀況分數可處理要求的電腦。如果啟用要求路由,路由集區是選取的任何前端網頁伺服器。如果停用要求路由,路由集區只會包含目前的前端網頁伺服器。

「要求路由及排列優先順序」可分為兩個部分:要求規則比對和前端網頁伺服器篩選。要求規則比對出現的情況與要求路由完全相同。前端網頁伺服器篩選搭配使用節流規則中的狀況閥值參數與前端網頁伺服器狀況資料,來判斷所選路由集區中的前端網頁伺服器是否可以處理指定的要求。

前端網頁伺服器篩選程序會依照下列步驟執行:

  1. 路由集區可能是目前的前端網頁伺服器,或者是要求路由選取的一或多部前端網頁伺服器。

  2. 系統會檢查所有比對規則,以尋找最小的狀況閥值。

  3. 將狀況分數大於或等於最小狀況閥值的前端網頁伺服器從路由集區中移除。

例如,要求路由已停用,且目前前端網頁伺服器的狀況分數為 7,並建立沒有狀況閥值 (亦即狀況閾值 = 0) 的規則「封鎖 OneNote」。

路由集區是狀況閾值等於零 (0) 的目前前端網頁伺服器。因此,此前端網頁伺服器可提供服務的最小閾值為零。由於目前前端網頁伺服器的狀況分數為 7,因此要求管理員會拒絕並移除要求。

要求負載平衡的角色是選取要傳送要求的單一目標。要求負載平衡使用路由加權配置來選取目標。所有路由目標的起始加權都是 1。如果啟用靜態加權,要求負載平衡會使用每個路由目標的靜態加權組來調整加權,且加權值可以是有效的整數值。如果啟用狀況加權,要求負載平衡會使用狀況資訊增加狀況較佳之目標的加權,並減少狀況較差之目標的加權。

監視及記錄是管理要求管理員之要求的關鍵。

  • 符合的規則。

  • 不符合的規則。

  • 要求的最終決策。

    決策可能包含下列實用資訊。

    • 是否拒絕要求?

    • 選取的前端網頁伺服器及選自的路由集區為何?

    • 要求成功或失敗,及其原因為何?

    • 路由和節流等每部分所需的時間為何,以及等候前端網頁伺服器回應的時間為何?

管理員可以使用這項資訊調整路由和節流規則集,以最佳化系統並修正問題。為了協助您監視及評估伺服器陣列的效能,您可以建立效能監視記錄檔並新增下列 SharePoint Foundation 要求管理員效能計數器:

 

計數器名稱 說明

Connections Current

要求管理員目前開啟的連線總數。

Connections Reused / Sec

當同一個用戶端連線在未關閉連線的情況下提出其他要求時,每秒重複使用的連線數目。

Routed Requests / Sec

每秒路由傳送的要求數目。執行個體決定此計數器追蹤的應用程式集區和伺服器。

Throttled Requests / Sec

每秒節流處理的要求數目。

Failed Requests / Sec

每秒失敗的要求數目。

Average Processing Time

處理要求的時間,亦即評估所有規則並決定路由目標的時間。

Last Ping Latency

上次 ping 延遲 (亦即要求管理員的 PING 功能)。執行個體決定應用程式集區和機器目標。

Connection Endpoints Current

為所有使用中連線連線的端點總數。

Routed Requests Current

未完成路由傳送的要求數目。執行個體決定應用程式集區和機器目標。

除了建立效能監視記錄檔之外,您還可以使用下列 Windows PowerShell 語法啟用詳細資訊記錄層級:

Set-SPLogLevel "Request Management" -TraceSeverity Verbose

https://technet.microsoft.com/zh-tw/library/jj219663.aspx
顯示: