ServiceThrottle Klass

Definition

Styr dataflödet för en tjänst för att optimera tillgänglighet och prestanda.

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

Exempel

I följande kodexempel visas den typiska användningen av ServiceThrottle genom att referera till ServiceThrottlingBehavior i en programkonfigurationsfil. I det här fallet upprättar de värden som anges högst en meddelandebearbetning i taget från en anslutning till en InstanceContext. Verklig användning måste bestämmas genom erfarenhet.

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

Kommentarer

ServiceThrottle Använd för att justera prestandaegenskaperna för en tjänst. Det enklaste sättet att konfigurera ServiceThrottle för en tjänst är att använda ServiceThrottlingBehavior, särskilt från en programkonfigurationsfil.

Egenskapen MaxConcurrentCalls anger det maximala antalet meddelanden som aktivt bearbetas för alla dispatcher-objekt i ett ServiceHost objekt.

Egenskapen MaxConcurrentInstances anger det maximala antalet InstanceContext objekt i tjänsten.

Egenskapen MaxConcurrentSessions anger det maximala antalet sessioner som en ServiceHost kan acceptera.

Note

En spårning skrivs när det första anropet, InstanceContexteller sessionen placeras i kö på väntelistan. Den första spårningen skrivs som en varning.

Egenskaper

Name Description
MaxConcurrentCalls

Hämtar eller anger det maximala antalet meddelanden som aktivt bearbetas för alla dispatcher-objekt i en ServiceHost.

MaxConcurrentInstances

Hämtar eller anger det maximala antalet tjänstobjekt som kan köras samtidigt.

MaxConcurrentSessions

Hämtar eller anger ett värde som anger det maximala antalet sessioner som ett ServiceHost objekt kan acceptera samtidigt.

Metoder

Name Description
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)

Gäller för