<serviceThrottling>
Especifica o mecanismo de limitação de um serviço do Windows Communication Foundation (WCF).
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceThrottling>
Syntax
<serviceThrottling maxConcurrentCalls="Integer"
maxConcurrentInstances="Integer"
maxConcurrentSessions="Integer" />
Atributos e elementos
As seções a seguir descrevem atributos, elementos filho e elementos pai.
Atributos
Atributo | Descrição |
---|---|
maxConcurrentCalls | Um número inteiro positivo que limita o número de mensagens que são processadas atualmente por meio de um ServiceHost. As chamadas além do limite são enfileiradas. Definir esse valor como 0 é equivalente a defini-lo como Int32.MaxValue. O padrão é 16 * contagem de processadores. |
maxConcurrentInstances | Um número inteiro positivo que limita o número de objetos InstanceContext executados ao mesmo tempo em um ServiceHost. As solicitações para criar instâncias adicionais serão enfileiradas e concluídas quando um slot abaixo do limite ficar disponível. A opção é a soma de maxConcurrentSessions e MaxConcurrentCalls |
maxConcurrentSessions | Um número inteiro positivo que limita o número de sessões que um objeto ServiceHost pode aceitar. O serviço aceitará conexões além do limite, mas somente os canais abaixo do limite estarão ativos (as mensagens são lidas do canal). O padrão é 100 * contagem de processadores. |
Elementos filho
Nenhum.
Elementos pai
Elemento | Descrição |
---|---|
<behavior> | Especifica um elemento de comportamento. |
Comentários
Os controles de limitação colocam limites no número de chamadas simultâneas, instâncias ou sessões para evitar a sobrecarga de consumo de recursos.
Um rastreamento é gravado cada vez que o valor dos atributos é atingido. O primeiro rastreamento é gravado como um aviso.
Exemplo
O seguinte exemplo de configuração especifica que o serviço limita o máximo de chamadas simultâneas para 2, e o número máximo de instâncias simultâneas para 10. Para obter um exemplo detalhado de como executar esse exemplo, consulte Limitação.
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
<serviceDebug includeExceptionDetailInFaults="False" />
<serviceMetadata httpGetEnabled="True" />
<!-- Specify throttling behavior -->
<serviceThrottling maxConcurrentCalls="2"
maxConcurrentInstances="10" />
</behavior>
</serviceBehaviors>
</behaviors>