ServiceThrottlingBehavior Sınıf

Tanım

Hizmet performansını ayarlamanıza olanak tanıyan çalışma zamanı aktarım hızı ayarlarını yapılandırır.

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
Devralma
ServiceThrottlingBehavior
Uygulamalar

Örnekler

Aşağıdaki kod örneği, örnek olarak , MaxConcurrentCallsve MaxConcurrentInstances özelliklerini 1 olarak ayarlayan bir uygulama yapılandırma dosyasından MaxConcurrentSessionskullanımını ServiceThrottlingBehavior gösterir. Gerçek dünya deneyimi, belirli bir uygulama için en uygun ayarların ne olduğunu belirler.

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

Açıklamalar

Uygulamanızın belleğinin ServiceThrottlingBehavior bitmesini önlemeye yardımcı olan çeşitli aktarım hızı ayarlarını denetlemek için sınıfını kullanın.

özelliği, MaxConcurrentCalls üzerinde şu anda işlenen ServiceHostiletilerin sayısını sınırlar.

özelliği, MaxConcurrentInstances üzerinde ServiceHostbir kerede yürütülen nesne sayısını InstanceContext sınırlar.

özelliği, MaxConcurrentSessions bir ServiceHost nesnenin kabul edebildiği oturum sayısını sınırlar.

Çalışma zamanı yük dengelemesi uygulamayı çalıştırma deneyimi gerektirdiğinden, bir uygulama yapılandırma dosyası aracılığıyla kullanmak ServiceThrottlingBehavior , hizmet performansını en üst düzeye çıkarmak için yürütmeyi değiştirmenin en yaygın yöntemidir.

Not

Bu özelliklerin değerine her erişildiğinde bir izleme yazılır. İlk izleme bir uyarı olarak yazılır.

Bir uygulama yapılandırma dosyasında serviceThrottling> öğesini kullanarak da bu özniteliğin< değerlerini ayarlayabilirsiniz.

Oluşturucular

ServiceThrottlingBehavior()

ServiceThrottlingBehavior sınıfının yeni bir örneğini başlatır.

Özellikler

MaxConcurrentCalls

bir üzerinde etkin olarak işleyen ileti sayısı üst sınırını belirten bir ServiceHostdeğer alır veya ayarlar.

MaxConcurrentInstances

Hizmette bir kerede yürütülebilecek en fazla nesne sayısını InstanceContext belirten bir değer alır veya ayarlar.

MaxConcurrentSessions

Bir nesnenin bir kerede kabul edebileceği en fazla oturum sayısını belirten bir ServiceHost değer alır veya ayarlar.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection)

Bağlamaları hizmet davranışını destekleyecek şekilde yapılandırılır.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Hizmeti, hizmet davranışını destekleyecek şekilde yapılandırılır.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Hizmetin ve konağın hizmet davranışını destekleyeebileceğini doğrular.

Şunlara uygulanır