ServiceThrottle ServiceThrottle ServiceThrottle ServiceThrottle Class

Definição

Controla a taxa de transferência de um serviço para otimizar o desempenho e a disponibilidade.Controls the throughput of a service to optimize availability and performance.

public ref class ServiceThrottle sealed
public sealed class ServiceThrottle
type ServiceThrottle = class
Public NotInheritable Class ServiceThrottle
Herança
ServiceThrottleServiceThrottleServiceThrottleServiceThrottle

Exemplos

O exemplo de código a seguir mostra o uso típico ServiceThrottle do referenciando ServiceThrottlingBehavior o em um arquivo de configuração de aplicativo.The following code example shows the typical use of the ServiceThrottle by referencing the ServiceThrottlingBehavior in an application configuration file. Nesse caso, os valores especificados estabelecem, no máximo, um processamento de mensagem de uma só vez de uma conexão com um InstanceContext.In this case, the values that are specified establish, at most, one message processing at one time from one connection to one InstanceContext. O uso do mundo real deve ser determinado por meio da experiência.Real-world usage must be determined through experience.

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

Comentários

Use o ServiceThrottle para ajustar as características de desempenho de um serviço.Use the ServiceThrottle to tune the performance characteristics of a service. A maneira mais fácil de configurar o ServiceThrottle para um serviço é usar o ServiceThrottlingBehavior, especialmente de um arquivo de configuração de aplicativo.The easiest way to configure the ServiceThrottle for a service is to use the ServiceThrottlingBehavior, especially from an application configuration file.

A MaxConcurrentCalls propriedade especifica o número máximo de mensagens processando ativamente em todos os objetos Dispatcher em ServiceHost um objeto.The MaxConcurrentCalls property specifies the maximum number of messages actively processing across all the dispatcher objects in a ServiceHost object.

A MaxConcurrentInstances propriedade especifica o número máximo de InstanceContext objetos no serviço.The MaxConcurrentInstances property specifies the maximum number of InstanceContext objects in the service.

A MaxConcurrentSessions propriedade especifica o número máximo de sessões que ServiceHost um pode aceitar.The MaxConcurrentSessions property specifies the maximum number of sessions a ServiceHost can accept.

Observação

Um rastreamento é gravado quando a primeira chamada, InstanceContextou sessão é enfileirada na espera.A trace is written when the first call, InstanceContext, or session is queued on the waitlist. O primeiro rastreamento é gravado como um aviso.The first trace is written as a warning.

Propriedades

MaxConcurrentCalls MaxConcurrentCalls MaxConcurrentCalls MaxConcurrentCalls

Obtém ou define o número máximo de mensagens processando ativamente entre todos os objetos do dispatcher em um ServiceHost.Gets or sets the maximum number of messages actively processing across all dispatcher objects in a ServiceHost.

MaxConcurrentInstances MaxConcurrentInstances MaxConcurrentInstances MaxConcurrentInstances

Obtém ou define o número máximo de objetos de serviço que podem ser executados de cada vez.Gets or sets the maximum number of service objects that can execute at one time.

MaxConcurrentSessions MaxConcurrentSessions MaxConcurrentSessions MaxConcurrentSessions

Obtém ou define um valor que especifica o número máximo de sessões que um objeto ServiceHost pode aceitar simultaneamente.Gets or sets a value that specifies the maximum number of sessions a ServiceHost object can accept at one time.

Métodos

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Serve como a função de hash padrão.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Inherited from Object)

Aplica-se a