Sdílet prostřednictvím


Řízení výkonu/omezování rychlosti

Ukázka omezení ukazuje použití ovládacích prvků omezování. Řízení přenosu omezuje počet současných volání, instancí nebo relací, aby 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á internetovou informační službou (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 čekací dobu 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 násobení a dělení se také provádějí souběžně, což ukazuje, že není možné souběžně provést více než dvě metody, čímž se demonstruje regulace.

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

Jak nastavit, sestavit a spustit ukázku

  1. Ujistěte se, že jste provedli instalační proceduru One-Time pro ukázky Windows Communication Foundation.

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

  3. Pokud chcete spustit ukázku v konfiguraci pro jeden počítač nebo pro více počítačů, postupujte podle pokynů v Spuštění ukázek Windows Communication Foundation.