ServiceThrottlingBehavior Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee configureert u runtimedoorvoerinstellingen waarmee u de serviceprestaties kunt afstemmen.
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
- Overname
-
ServiceThrottlingBehavior
- Implementeringen
Voorbeelden
In het volgende codevoorbeeld ziet u het gebruik van ServiceThrottlingBehavior een toepassingsconfiguratiebestand waarmee de MaxConcurrentSessions, MaxConcurrentCallsen MaxConcurrentInstances eigenschappen worden ingesteld op 1 als voorbeeld. Ervaring in de praktijk bepaalt wat de optimale instellingen zijn voor een bepaalde toepassing.
<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>
Opmerkingen
Gebruik de ServiceThrottlingBehavior klasse om verschillende doorvoerinstellingen te beheren die helpen voorkomen dat uw toepassing onvoldoende geheugen heeft.
De MaxConcurrentCalls eigenschap beperkt het aantal berichten dat momenteel wordt verwerkt in een ServiceHost.
De MaxConcurrentInstances eigenschap beperkt het aantal InstanceContext objecten dat tegelijk wordt uitgevoerd op een ServiceHost.
De MaxConcurrentSessions eigenschap beperkt het aantal sessies dat een ServiceHost object kan accepteren.
Omdat runtimetaakverdeling ervaring met het uitvoeren van de toepassing vereist, is het gebruik van een ServiceThrottlingBehavior toepassingsconfiguratiebestand de meest voorkomende methode om de uitvoering te wijzigen om de serviceprestaties te maximaliseren.
Note
Er wordt een tracering geschreven telkens wanneer de waarde van deze eigenschappen wordt bereikt. De eerste tracering wordt geschreven als waarschuwing.
U kunt ook de waarden van dit kenmerk instellen met behulp van het <servicebeperkingselement> in een toepassingsconfiguratiebestand.
Constructors
| Name | Description |
|---|---|
| ServiceThrottlingBehavior() |
Initialiseert een nieuw exemplaar van de ServiceThrottlingBehavior klasse. |
Eigenschappen
| Name | Description |
|---|---|
| MaxConcurrentCalls |
Hiermee wordt een waarde opgehaald of ingesteld waarmee het maximum aantal berichten wordt opgegeven dat actief wordt verwerkt in een ServiceHost. |
| MaxConcurrentInstances |
Hiermee wordt een waarde opgehaald of ingesteld waarmee het maximum aantal InstanceContext objecten in de service wordt opgegeven dat tegelijk kan worden uitgevoerd. |
| MaxConcurrentSessions |
Hiermee wordt een waarde opgehaald of ingesteld waarmee het maximum aantal sessies wordt opgegeven dat een ServiceHost object tegelijk kan accepteren. |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Hiermee configureert u de bindingen om het servicegedrag te ondersteunen. |
| IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Hiermee configureert u de service om het servicegedrag te ondersteunen. |
| IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Valideert of de service en host het servicegedrag kunnen ondersteunen. |