Condividi tramite


<limitazioneServizio>

Specifica il meccanismo della limitazione di un servizio Windows Communication Foundation (WCF).

<Configurazione>
  <system.serviceModel>
    <Comportamenti>
      <Servicebehaviors>
        <Comportamento>
          <limitazioneServizio>

Sintassi

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

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.

Attributi

Attributo Descrizione
maxConcurrentCalls Numero intero positivo che limita il numero di messaggi attualmente elaborati in un oggetto ServiceHost. Le chiamate oltre il limite vengono accodate. L'impostazione di questo valore su 0 è equivalente alla relativa impostazione su Int32.MaxValue. L'impostazione predefinita è 16 * il numero dei processori.
maxConcurrentInstances Numero intero positivo che limita il numero di oggetti InstanceContext eseguiti contemporaneamente in un oggetto ServiceHost. Le richieste di creare istanze aggiuntive vengono messe in coda e completate quando diventa disponibile uno slot sotto il limite. L'impostazione predefinita è la somma di maxConcurrentSessions più MaxConcurrentCalls
maxConcurrentSessions Numero intero positivo che limita il numero di sessioni che possono essere accettate da un oggetto ServiceHost.

Il servizio accetterà le connessioni oltre il limite, ma sono attivi solo i canali sotto il limite (i messaggi vengono letti dal canale). L'impostazione predefinita è 100 * il numero dei processori.

Elementi figlio

Nessuno.

Elementi padre

Elemento Descrizione
<Comportamento> Specifica un elemento di comportamento.

Commenti

I controlli di limitazione pongono dei limiti sul numero di chiamate, istanze o sessioni simultanee per impedire l'uso eccessivo di risorse.

Viene scritta una traccia ogni volta che viene raggiunto il valore di attributi. La prima traccia viene scritta come un avviso.

Esempio

Nell'esempio di configurazione seguente viene specificato che il servizio limita il numero massimo di chiamate simultanee a 2 e il numero massimo di istanze simultanee a 10. Per un esempio dettagliato dell'esecuzione di questo esempio, vedere Limitazione delle richieste.

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

Vedi anche