Utilizzo di ServiceThrottlingBehavior per controllare le prestazioni dei servizi WCF

La classe ServiceThrottlingBehavior espone proprietà che possono essere utilizzate per limitare il numero di istanze o sessioni create al livello dell'applicazione. Utilizzando questo comportamento è possibile ottimizzare le prestazioni dell'applicazione Windows Communication Foundation (WCF).

Controllo delle istanze di servizio e delle chiamate contemporanee

Utilizzare la proprietà MaxConcurrentCalls per specificare il numero massimo di messaggi elaborati attivamente in una classe ServiceHost e la proprietà MaxConcurrentInstances per specificare il numero massimo di oggetti InstanceContext nel servizio.

Poiché la determinazione delle impostazioni per queste proprietà avviene in genere dopo l'esperienza in scenari reali eseguendo l'applicazione con i carichi, le impostazioni per le proprietà ServiceThrottlingBehavior vengono in genere specificate in un file di configurazione dell'applicazione utilizzando l'elemento <serviceThrottling>.

L'esempio di codice seguente mostra come utilizzare la classe ServiceThrottlingBehavior da un file di configurazione dell'applicazione che imposta le proprietà MaxConcurrentSessions, MaxConcurrentCalls e MaxConcurrentInstances su 1 a scopo di esempio. L'esperienza in scenari reali determina le impostazioni ottimali per qualsiasi applicazione specifica.

L'esatto comportamento in fase di esecuzione dipende dai valori delle proprietà ConcurrencyMode e InstanceContextMode che controllano rispettivamente il numero dei messaggi che possono essere eseguiti simultaneamente in un'operazione e la durata della classe InstanceContext del servizio relativa alle sessioni del canale in ingresso.

Per informazioni dettagliate, vedere MaxConcurrentCalls e MaxConcurrentInstances.

Vedere anche

Riferimenti

ServiceThrottlingBehavior
MaxConnections