Sdílet prostřednictvím


Omezování

Ukázka omezení ukazuje použití ovládacích prvků omezování. Omezení omezuje počet souběžných volání, instancí nebo relací, aby se zabránilo nadměrné spotřebě prostředků. Chování omezování se určuje v nastavení konfiguračního souboru služby. Tato ukázka vychází ze služby Začínáme , která implementuje službu kalkulačky.

V této ukázce je klient konzolovou aplikací (.exe) a služba je hostovaná Internetová informační služba (IIS).

Poznámka:

Postup nastavení a pokyny k sestavení pro tuto ukázku najdete na konci tohoto tématu.

Konfigurační soubor služby určuje ovládací prvky omezování v <omezení služby>, jak je znázorněno v následující ukázkové konfiguraci.

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

Podle konfigurace omezuje služba maximální počet souběžných volání na 2 a maximální počet souběžných instancí na 10.

Abychom ukázali omezování, definujeme dobu spánku u metod služby následujícím způsobem:

public double Add(double n1, double n2)
{
    System.Threading.Thread.Sleep(2000);
    return n1 + n2;
}

Při spuštění ukázky se požadavky na operace a odpovědi zobrazí v okně konzoly klienta. Metody sčítání a odčítání se provádějí souběžně a metody Multipli a Divide se provádějí souběžně a ukazují, že není možné souběžně provést více než 2 metody, což demonstruje omezování.

Press <ENTER> to terminate client.
Add(100,15.99)
Subtract(145,76.54)
Multiply(9,81.25)
Divide(22,7)

Add Result: 115.99
Subtract Result: 68.46
Multiply Result: 731.25
Divide Result: 3.14285714285714

Press any key to continue . . .

Nastavení, sestavení a spuštění ukázky

  1. Ujistěte se, že jste pro ukázky windows Communication Foundation provedli jednorázovou instalační proceduru.

  2. Pokud chcete sestavit edici C# nebo Visual Basic .NET řešení, postupujte podle pokynů v části Sestavení ukázek windows Communication Foundation.

  3. Pokud chcete spustit ukázku v konfiguraci s jedním nebo více počítači, postupujte podle pokynů v části Spuštění ukázek windows Communication Foundation.