使用 AppFabric Cmdlet 來設定節流功能
此主題說明如何使用 AppFabric Cmdlet 來取得或設定節流參數的值。
注意
若要以互動方式執行 AppFabric Cmdlet,您必須使用 Microsoft AppFabric 1.1 for Windows Server 的 Windows PowerShell 主控台,輸入適當的 Cmdlet,然後按下 ENTER。如需以一般方式執行 AppFabric Cmdlet 的詳細資訊,請參閱執行 AppFabric Cmdlet。
使用 Cmdlet 來取得節流設定
在 AppFabric Windows PowerShell 主控台中,執行 Get-ASAppServiceThrottling Cmdlet 以取得節流參數的值。此 Cmdlet 會從與範圍參數指定之範圍關聯的組態檔,擷取 serviceThrottling 元素的 maxConcurrentCalls、maxConcurrentSessions 與 maxConcurrentInstances 屬性值。
下表列出這個 Cmdlet 可使用的不同語法。如需有關範圍參數 (-SiteName、-VirtualPath 與 -Uri 等) 的詳細資訊,請參閱 Cmdlet 範圍;如需有關管道處理參數 (ApplicationInfo 與 ServiceInfo) 的詳細資訊,請參閱 Cmdlet 管道處理。
Get-ASAppServiceThrottling Cmdlet 的語法選項
// to get throttling settings at the root level
Get-ASAppServiceThrottling -Root
//sample output from the command
MaxConcurrentCalls : 16
MaxConcurrentInstances : 26
MaxConcurrentSessions : 10
IsLocal : True
BehaviorName :
// to get throttling settings at the site level
Get-ASAppServiceThrottling [-SiteName] <String>
// to get throttling settings at an application or a service level that the virtual path points to
Get-ASAppServiceThrottling [-SiteName] <String> [-VirtualPath] <String>]
// to get throttling settings at a site, application, or service level that an URI points to
Get-ASAppServiceThrottling [-Uri] <Uri>
// to get throttling settings at an application level specified by the ApplicationObject; used mainly in piping scenarios
Get-ASAppServiceThrottling -ApplicationObject
Ex: Get-Application <use scope parameters SiteName or Uri to resolve to a Web site> | Get-ASAppServiceThrottling
// to get throttling settings at a service level specified by the ServiceObject; used mainly in piping scenarios
Get-ASAppServiceThrottling -ServiceObject
Ex: Get-ApplicationService <use scope parameters VirtualPath or Uri to resolve to an application> | Get-ASAppServiceThrottling
使用 Cmdlet 來設定節流設定
在 AppFabric Windows PowerShell 主控台中,執行 Set-ASAppServiceThrottling Cmdlet 以設定節流參數的值。此 Cmdlet 會在與範圍參數指定之範圍關聯的組態檔中,設定 serviceThrottling 元素的 maxConcurrentCalls、maxConcurrentSessions 與 maxConcurrentInstances 屬性值。若 serviceThrottling 元素不存在,則此 Cmdlet 會建立該元素,然後設定值。
您可以使用在這個主題結尾定義的範圍參數與管道處理參數。您也可以使用下列節流參數來搭配此 Cmdlet,以在與指定範圍關聯的組態檔中設定 serviceThrottling 元素的 maxConcurrentCalls、maxConcurrentSessions 與 maxConcurrentInstances 屬性值。您只需要傳遞想要變更的參數。例如,若要變更「最大同時呼叫數目」參數的值,只要為 MaxConcurrentCalls 參數設定適當的值並傳送參數。
節流參數
項目 |
描述 |
MaxConcurrentCalls |
指定服務主機一次可處理的訊息數目上限。若要處理的呼叫數目等於此值,則新的呼叫會被放入佇列,直到其中一個作用中呼叫完成。此參數允許的值介於 0 到 Int32.MaxValue 之間。將此參數設定為 0 等於將它設定為 Int32.MaxValue。 |
MaxConcurrentInstances |
指定服務主機一次可處理的執行個體數目上限。若執行中的執行個體數目等於此值,則建立額外執行個體的任何要求都會被放入佇列,直到其中一個執行中執行個體完成時才會完成。此參數允許的值介於 1 到 Int32.MaxValue 之間。 |
MaxConcurrentSessions |
指定服務主機可接受的工作階段數目上限。服務主機將接受超過限制的連線,但只有低於限制的通道為作用中 (系統是從通道讀取訊息)。此參數允許的值介於 0 到 Int32.MaxValue 之間。將此值設定為 0 等於將它設定為 Int32.MaxValue。 |
如需有關範圍參數 (-SiteName、-VirtualPath 與 -Uri 等) 的詳細資訊,請參閱 Cmdlet 範圍;如需有關管道處理參數 (ApplicationInfo 與 ServiceInfo) 的詳細資訊,請參閱 Cmdlet 管道處理。
Set-ASAppServiceThrottling Cmdlet 的語法選項
// to set throttling settings at the root level
Set-ASAppServiceThrottling -Root -MaxConcurrentCalls <Int32> -MaxConcurrentInstances <Int32> -MaxConcurrentSessions <Int32>
// to set throttling settings at the Web site level
Set-ASAppServiceThrottling -SiteName <String> -MaxConcurrentCalls <Int32> -MaxConcurrentInstances <Int32> -MaxConcurrentSessions <Int32>
// to set throttling settings at application or service level that the virtual path points to
Set-ASAppServiceThrottling -SiteName <String> -VirtualPath <String> -MaxConcurrentCalls <Int32> -MaxConcurrentInstances <Int32> -MaxConcurrentSessions <Int32>
// to set throttling settings at a site, application, or service level that an URI points to
Set-ASAppServiceThrottling -Uri <Uri> -MaxConcurrentCalls <Int32> -MaxConcurrentInstances <Int32> -MaxConcurrentSessions <Int32>
// to get throttling settings at an application level specified by the ApplicationObject; used mainly in piping scenarios
Set-ASAppServiceThrottling -ApplicationObject <ApplicationInfo> -MaxConcurrentCalls <Int32> -MaxConcurrentInstances <Int32> -MaxConcurrentSessions <Int32>
// Ex: Get-ASApplication <use scope parameters SiteName or Uri to resolve to a Web site> | Set-ASAppServiceThrottling -MaxConcurrentCalls 20 -MaxConcurrentInstances 30 -MaxConcurrentSessions 15
// to set throttling settings at a service level specified by the ServiceObject; used mainly in piping scenarios
Set-ASAppServiceThrottling -ServiceObject <ServiceInfo> -MaxConcurrentCalls <Int32> -MaxConcurrentInstances <Int32> -MaxConcurrentSessions <Int32>
// Ex: Get-ASApplicationService <use scope parameters SiteName or Uri to resolve to an application> | Set-ASAppServiceThrottling -MaxConcurrentCalls 20 -MaxConcurrentInstances 30 -MaxConcurrentSessions 15
2012-03-05