Freigeben über


ServiceThrottle.MaxConcurrentSessions Eigenschaft

Definition

Ruft einen Wert ab, der die maximale Anzahl an Sitzungen angibt, die ein ServiceHost-Objekt gleichzeitig akzeptiert.

public:
 property int MaxConcurrentSessions { int get(); void set(int value); };
public int MaxConcurrentSessions { get; set; }
member this.MaxConcurrentSessions : int with get, set
Public Property MaxConcurrentSessions As Integer

Eigenschaftswert

Int32

Die maximale Anzahl an Sitzungen, die ein Diensthost akzeptiert. Der Standardwert ist 100 * Anzahl der Prozessoren auf dem Computer.

Beispiele

Im folgenden Codebeispiel wird eine typische Verwendung von ServiceThrottle gezeigt, bei der in einer Anwendungskonfigurationsdatei auf ServiceThrottlingBehavior verwiesen wird. In diesem Beispiel ergeben die festgelegten Werte höchstens jeweils eine Nachrichtenverarbeitung von einer Verbindung zu einem InstanceContext. Die beste Verwendung in der Praxis muss durch Erfahrung ermittelt werden.

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

Hinweise

Die MaxConcurrentSessions-Eigenschaft gibt die maximale Anzahl an Kanälen an, die ServiceHost akzeptieren kann. Jedes Listenerobjekt kann einen ausstehenden Kanal aufweisen, der nicht auf den Wert MaxConcurrentSessions zählt, bis WCF den Kanal akzeptiert und mit der Verarbeitung von Nachrichten beginnt. Diese Eigenschaft ist höchst nützlich in Szenarien, die Sitzungen nutzen.

Hinweis

Eine Ablaufverfolgung wird jedes Mal geschrieben, wenn der Wert dieser Eigenschaft überschritten wird. Die erste Ablaufverfolgung wird als Warnung geschrieben.

Weitere Informationen zu Sitzungen finden Sie unter Verwenden von Sitzungen.

In der Regel wird diese Eigenschaft mit der ServiceThrottlingBehavior.MaxConcurrentSessions-Eigenschaft festgelegt.

Gilt für