ServiceThrottlingBehavior Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Konfiguruje nastavení propustnosti za běhu, která umožňují ladit výkon služby.
public ref class ServiceThrottlingBehavior : System::ServiceModel::Description::IServiceBehavior
public class ServiceThrottlingBehavior : System.ServiceModel.Description.IServiceBehavior
type ServiceThrottlingBehavior = class
interface IServiceBehavior
Public Class ServiceThrottlingBehavior
Implements IServiceBehavior
- Dědičnost
-
ServiceThrottlingBehavior
- Implementuje
Příklady
Následující příklad kódu ukazuje použití z konfiguračního ServiceThrottlingBehavior souboru aplikace, který nastaví MaxConcurrentSessions, MaxConcurrentCallsa MaxConcurrentInstances vlastnosti na 1 jako příklad. Prostředí z reálného světa určuje, jaká jsou optimální nastavení pro jakoukoli konkrétní aplikaci.
<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>
Poznámky
ServiceThrottlingBehavior Pomocí třídy můžete řídit různá nastavení propustnosti, která pomáhají zabránit nedostatku paměti vaší aplikace.
Vlastnost MaxConcurrentCalls omezuje počet zpráv, které aktuálně zpracovávají napříč ServiceHost.
Vlastnost MaxConcurrentInstances omezuje počet InstanceContext objektů, které se provádějí najednou napříč ServiceHost.
Vlastnost MaxConcurrentSessions omezuje počet relací, ServiceHost které může objekt přijmout.
Vzhledem k tomu, že vyrovnávání zatížení za běhu vyžaduje zkušenosti se spuštěním aplikace, je použití ServiceThrottlingBehavior konfiguračního souboru aplikace nejběžnější metodou úpravy provádění tak, aby maximalizoval výkon služby.
Poznámka
Trasování se zapíše při každém dosažení hodnoty těchto vlastností. První trasování se zapíše jako upozornění.
Hodnoty tohoto atributu můžete také nastavit pomocí elementu <serviceThrottling> v konfiguračním souboru aplikace.
Konstruktory
ServiceThrottlingBehavior() |
Inicializuje novou instanci ServiceThrottlingBehavior třídy. |
Vlastnosti
MaxConcurrentCalls |
Získá nebo nastaví hodnotu, která určuje maximální počet zpráv aktivně zpracovávaných v rámci ServiceHost. |
MaxConcurrentInstances |
Získá nebo nastaví hodnotu, která určuje maximální počet InstanceContext objektů ve službě, která se může provést najednou. |
MaxConcurrentSessions |
Získá nebo nastaví hodnotu, která určuje maximální počet relací ServiceHost , které může objekt přijmout najednou. |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Nakonfiguruje vazby tak, aby podporovaly chování služby. |
IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Nakonfiguruje službu tak, aby podporovala chování služby. |
IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Ověří, že služba a hostitel můžou podporovat chování služby. |