Compartir a través de


ServiceThrottle.MaxConcurrentSessions Propiedad

Definición

Obtiene o establece un valor que especifica el número máximo de sesiones que un objeto ServiceHost puede aceptar en un momento dado.

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

Valor de propiedad

Int32

Número máximo de sesiones que un host de servicio acepta. El valor predeterminado es 100 * número de procesadores en el equipo.

Ejemplos

En el siguiente ejemplo de código se muestra el uso normal de ServiceThrottle haciendo referencia a ServiceThrottlingBehavior en un archivo de configuración de la aplicación. En este caso, los valores que se especifican establecen, a lo sumo, un mensaje que se procesa una vez desde una conexión a un InstanceContext. El uso real se debe determinar a partir de la experiencia.

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

Comentarios

La propiedad MaxConcurrentSessions especifica el número máximo de canales que un ServiceHost puede aceptar. Cada objeto de agente de escucha puede tener un canal pendiente que no cuente con el valor de MaxConcurrentSessions hasta que WCF acepte el canal y comience a procesar mensajes en él. Esta propiedad resulta muy útil en situaciones que utilizan sesiones.

Nota

Se escribe un seguimiento cada vez que se supera el valor de esta propiedad. El primer seguimiento se escribe como una advertencia.

Para obtener más información sobre las sesiones, consulte Uso de sesiones.

Normalmente, esta propiedad se establece utilizando la propiedad ServiceThrottlingBehavior.MaxConcurrentSessions.

Se aplica a