<serviceThrottling>
指定 Windows Communication Foundation (WCF) 服務的節流機制。
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceThrottling>
Syntax
<serviceThrottling maxConcurrentCalls="Integer"
maxConcurrentInstances="Integer"
maxConcurrentSessions="Integer" />
屬性和項目
下列章節說明屬性、子元素和父元素。
屬性
屬性 | 描述 |
---|---|
maxConcurrentCalls | 正整數,限制同時在 ServiceHost 上進行處理的訊息數目。 超出上限的呼叫將排入佇列。 將這個值設定為 0 相當於設定為 Int32.MaxValue。 預設值是 16 * 處理器計數。 |
maxConcurrentInstances | 正整數,限制同時在 InstanceContext 上執行的 ServiceHost 物件數目。 當限制之內的位置可供使用時,建立其他執行個體的要求便會進入佇列並完成。 預設值是 maxConcurrentSessions 和 MaxConcurrentCalls 的總和 |
maxConcurrentSessions | 正整數,限制 ServiceHost 物件可以接受的工作階段數目。 服務將接受超過限制的連線,但只有低於限制個數的通道為作用中 (可從該通道讀取訊息)。 預設值是 100 * 處理器計數。 |
子元素
無。
父項目
元素 | 描述 |
---|---|
<behavior> | 指定行為項目。 |
備註
節流控制會限制同時呼叫、並行執行個體或工作階段的數目,以防止過度消耗資源。
每次達到這些屬性值時,就會寫入追蹤。 第一個追蹤會寫入成為警告。
範例
下列組態範例指定服務將同時呼叫上限限制為 2,且將並行執行個體上限限制為 10。 如需執行這個範例的詳細範例,請參閱節流。
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceDebug includeExceptionDetailInFaults="False" />
<serviceMetadata httpGetEnabled="True" />
<!-- Specify throttling behavior -->
<serviceThrottling maxConcurrentCalls="2"
maxConcurrentInstances="10" />
</behavior>
</serviceBehaviors>
</behaviors>