Partager via


ServiceThrottle Classe

Définition

Contrôle le débit d'un service pour optimiser la disponibilité et les performances.

public ref class ServiceThrottle sealed
public sealed class ServiceThrottle
type ServiceThrottle = class
Public NotInheritable Class ServiceThrottle
Héritage
ServiceThrottle

Exemples

L'exemple de code suivant illustre l'utilisation type de la ServiceThrottle en référençant le ServiceThrottlingBehavior dans un fichier de configuration de l'application. Dans ce cas, les valeurs spécifiées établissent, au plus, un traitement de message à la fois à partir d'une connexion à un InstanceContext. L'utilisation réelle doit être déterminée avec l'expérience.

<configuration>
  <appSettings>
    <!-- use appSetting to configure base address provided by host -->
    <add key="baseAddress" value="http://localhost:8080/ServiceMetadata" />
  </appSettings>
  <system.serviceModel>
    <services>
      <service 
        name="Microsoft.WCF.Documentation.SampleService"
        behaviorConfiguration="Throttled" >
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8080/SampleService"/>
          </baseAddresses>
        </host>
        <endpoint
          address=""
          binding="wsHttpBinding"
          contract="Microsoft.WCF.Documentation.ISampleService"
         />
        <endpoint
          address="mex"
          binding="mexHttpBinding"
          contract="IMetadataExchange"
         />
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior  name="Throttled">
          <serviceThrottling 
            maxConcurrentCalls="1" 
            maxConcurrentSessions="1" 
            maxConcurrentInstances="1"
          />
          <serviceMetadata 
            httpGetEnabled="true" 
            httpGetUrl=""
          />
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>

Remarques

Utilisez la ServiceThrottle pour régler les caractéristiques de performances d'un service. La solution la plus simple pour configurer la ServiceThrottle pour un service est d'utiliser le ServiceThrottlingBehavior, en particulier à partir d'un fichier de configuration de l'application.

La propriété MaxConcurrentCalls spécifie le nombre maximal de messages activement en cours de traitement dans l'ensemble des objets de répartiteur dans un objet ServiceHost.

La propriété MaxConcurrentInstances spécifie le nombre maximal d'objets InstanceContext dans le service.

La propriété MaxConcurrentSessions spécifie le nombre maximal de sessions qu'un ServiceHost peut accepter.

Notes

Un suivi est écrit quand le premier appel, InstanceContext ou session est mis en file d'attente. Le premier suivi est écrit en tant qu'avertissement.

Propriétés

MaxConcurrentCalls

Obtient ou définit le nombre maximal de messages activement en cours de traitement dans l'ensemble des objets de répartiteur dans un ServiceHost.

MaxConcurrentInstances

Obtient ou définit le nombre maximal d'objets de service qui peuvent s'exécuter en même temps.

MaxConcurrentSessions

Obtient ou définit une valeur qui spécifie le nombre maximal de sessions qu'un objet ServiceHost peut accepter à la fois.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à