ServiceThrottle Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Kontroluje przepływność usługi, aby zoptymalizować dostępność i wydajność.
public ref class ServiceThrottle sealed
public sealed class ServiceThrottle
type ServiceThrottle = class
Public NotInheritable Class ServiceThrottle
- Dziedziczenie
-
ServiceThrottle
Przykłady
Poniższy przykład kodu przedstawia typowe użycie elementu ServiceThrottle , odwołując ServiceThrottlingBehavior się do pliku konfiguracji aplikacji. W takim przypadku określone wartości określają co najwyżej jeden proces przetwarzania komunikatów z jednego połączenia do jednego InstanceContext. Rzeczywiste użycie musi być określane za pomocą środowiska.
<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>
Uwagi
Użyj polecenia , ServiceThrottle aby dostroić charakterystykę wydajności usługi. Najprostszym sposobem skonfigurowania ServiceThrottle dla usługi jest użycie elementu ServiceThrottlingBehavior, zwłaszcza z pliku konfiguracji aplikacji.
Właściwość MaxConcurrentCalls określa maksymalną liczbę komunikatów aktywnie przetwarzanych we wszystkich obiektach dyspozytora w ServiceHost obiekcie.
Właściwość MaxConcurrentInstances określa maksymalną liczbę InstanceContext obiektów w usłudze.
Właściwość MaxConcurrentSessions określa maksymalną liczbę sesji, które ServiceHost można zaakceptować.
Uwaga
Ślad jest zapisywany, gdy pierwsze wywołanie , InstanceContextlub sesja jest w kolejce na liście oczekiwania. Pierwszy ślad jest zapisywany jako ostrzeżenie.
Właściwości
MaxConcurrentCalls |
Pobiera lub ustawia maksymalną liczbę komunikatów aktywnie przetwarzanych we wszystkich obiektach dyspozytora w obiekcie ServiceHost. |
MaxConcurrentInstances |
Pobiera lub ustawia maksymalną liczbę obiektów usługi, które mogą być wykonywane jednocześnie. |
MaxConcurrentSessions |
Pobiera lub ustawia wartość określającą maksymalną liczbę sesji, ServiceHost które obiekt może akceptować jednocześnie. |
Metody
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |