Partilhar via


<serviceThrottling>

Especifica o mecanismo de limitação de um serviço do Windows Communication Foundation (WCF).

<configuração>
  <system.serviceModel>
    <comportamentos>
      <serviceBehaviors>
        <comportamento>
          <serviceThrottling>

Syntax

<serviceThrottling maxConcurrentCalls="Integer"
                   maxConcurrentInstances="Integer"
                   maxConcurrentSessions="Integer" />

Atributos e Elementos

As secções seguintes descrevem atributos, elementos subordinados e elementos principais.

Atributos

Atributo Descrição
maxConcurrentCalls Um número inteiro positivo que limita o número de mensagens que atualmente são processadas num ServiceHost. As chamadas que excedem o limite estão em fila de espera. Definir este valor como 0 é equivalente a defini-lo como Int32.MaxValue. A predefinição é 16 * contagem de processadores.
maxConcurrentInstances Um número inteiro positivo que limita o número de InstanceContext objetos que são executados de uma só vez num ServiceHost. Os pedidos para criar instâncias adicionais são colocados em fila e concluídos quando um bloco abaixo do limite fica disponível. A predefinição é a soma de maxConcurrentSessions e MaxConcurrentCalls
maxConcurrentSessions Um número inteiro positivo que limita o número de sessões que um ServiceHost objeto pode aceitar.

O serviço aceitará ligações que ultrapassem o limite, mas apenas os canais abaixo do limite estão ativos (as mensagens são lidas a partir do canal). A predefinição é 100 * contagem de processadores.

Elementos Subordinados

Nenhum.

Elementos Principais

Elemento Descrição
<comportamento> Especifica um elemento de comportamento.

Observações

Os controlos de limitação colocam limites ao número de chamadas simultâneas, instâncias ou sessões para impedir o consumo excessivo de recursos.

Um rastreio é escrito sempre que o valor dos atributos é atingido. O primeiro rastreio é escrito como um aviso.

Exemplo

O exemplo de configuração seguinte especifica que o serviço limita as chamadas simultâneas máximas para 2 e o número máximo de instâncias simultâneas para 10. Para obter um exemplo detalhado da execução deste exemplo, veja Limitação.

<behaviors>
  <serviceBehaviors>
    <behavior name="CalculatorServiceBehavior">
      <serviceDebug includeExceptionDetailInFaults="False" />
      <serviceMetadata httpGetEnabled="True" />
      <!-- Specify throttling behavior -->
      <serviceThrottling maxConcurrentCalls="2"
                         maxConcurrentInstances="10" />
    </behavior>
  </serviceBehaviors>
</behaviors>

Ver também