ServiceThrottle Klasse

Definition

Steuert den Durchsatz eines Diensts, um die Verfügbarkeit und Leistung zu optimieren.

public ref class ServiceThrottle sealed
public sealed class ServiceThrottle
type ServiceThrottle = class
Public NotInheritable Class ServiceThrottle
Vererbung
ServiceThrottle

Beispiele

Im folgenden Codebeispiel wird eine typische Verwendung von ServiceThrottle gezeigt, bei der in einer Anwendungskonfigurationsdatei auf ServiceThrottlingBehavior verwiesen wird. In diesem Beispiel ergeben die festgelegten Werte höchstens jeweils eine Nachrichtenverarbeitung von einer Verbindung zu einem InstanceContext. Die beste Verwendung in der Praxis muss durch Erfahrung ermittelt werden.

<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>

Hinweise

Verwenden Sie ServiceThrottle, um die Leistungsmerkmale eines Diensts zu optimieren. Die einfachste Möglichkeit, ServiceThrottle für einen Dienst zu konfigurieren, ist die Verwendung von ServiceThrottlingBehavior, insbesondere in einer Anwendungskonfigurationsdatei.

Die MaxConcurrentCalls-Eigenschaft legt die maximale Anzahl an Nachrichten fest, die die Verteilerobjekte in einem ServiceHost-Objekt aktiv verarbeiten.

Die MaxConcurrentInstances-Eigenschaft gibt die maximale Anzahl der InstanceContext-Objekte im Dienst an.

Die MaxConcurrentSessions-Eigenschaft gibt die maximale Anzahl an Sitzungen an, die ServiceHost akzeptieren kann.

Hinweis

Eine Ablaufverfolgung wird geschrieben, wenn der erste Aufruf, InstanceContext oder eine Sitzung in die Warteschlange gestellt wird. Die erste Ablaufverfolgung wird als Warnung geschrieben.

Eigenschaften

MaxConcurrentCalls

Ruft die maximale Anzahl von Nachrichten ab, die die Verteilerobjekte in ServiceHost aktiv verarbeiten, oder legt diese fest.

MaxConcurrentInstances

Ruft die maximale Anzahl der Dienstobjekte ab, die gleichzeitig ausgeführt werden können, oder legt diese fest.

MaxConcurrentSessions

Ruft einen Wert ab, der die maximale Anzahl an Sitzungen angibt, die ein ServiceHost-Objekt gleichzeitig akzeptiert.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für: