<serviceThrottling>

Określa mechanizm ograniczania usługi Windows Communication Foundation (WCF).

<Konfiguracji>
  <System.servicemodel>
    <Zachowania>
      <Servicebehaviors>
        <Zachowanie>
          <serviceThrottling>

Składnia

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

Atrybuty i elementy

W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.

Atrybuty

Atrybut Opis
Maxconcurrentcalls Dodatnia liczba całkowita, która ogranicza liczbę komunikatów, które obecnie przetwarzają w obiekcie ServiceHost. Wywołania przekraczające limit są kolejkowane. Ustawienie tej wartości na 0 jest równoważne ustawieniu jej na Int32.MaxValue. Wartość domyślna to 16 * liczba procesorów.
maxConcurrentInstances Dodatnia liczba całkowita, która ogranicza liczbę InstanceContext obiektów wykonywanych jednocześnie w obiekcie ServiceHost. Żądania tworzenia dodatkowych wystąpień są kolejkowane i wypełniane, gdy miejsce poniżej limitu stanie się dostępne. Wartość domyślna to suma wartości maxConcurrentSessions i MaxConcurrentCalls
Maxconcurrentsessions Dodatnia liczba całkowita, która ogranicza liczbę sesji, które ServiceHost może zaakceptować obiekt.

Usługa zaakceptuje połączenia przekraczające limit, ale tylko kanały poniżej limitu są aktywne (komunikaty są odczytywane z kanału). Wartość domyślna to 100 * liczba procesorów.

Elementy podrzędne

Brak.

Elementy nadrzędne

Element Opis
<Zachowanie> Określa zachowanie elementu.

Uwagi

Kontrolki ograniczania nakładają limity liczby współbieżnych wywołań, wystąpień lub sesji, aby zapobiec nadmiernemu zużyciu zasobów.

Ślad jest zapisywany za każdym razem, gdy wartość atrybutów zostanie osiągnięta. Pierwszy ślad jest zapisywany jako ostrzeżenie.

Przykład

Poniższy przykład konfiguracji określa, że usługa ogranicza maksymalną liczbę współbieżnych wywołań do 2 i maksymalną liczbę współbieżnych wystąpień do 10. Aby uzyskać szczegółowy przykład uruchamiania tego przykładu, zobacz Ograniczanie przepustowości.

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

Zobacz też