Aracılığıyla paylaş


ServiceThrottlingBehavior.MaxConcurrentInstances Özellik

Tanım

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

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

Özellik Değeri

Bir kerede hizmetteki en fazla nesne sayısı InstanceContext . Varsayılan değer, değerinin ve değerinin MaxConcurrentSessions toplamıdır MaxConcurrentCalls.

Örnekler

Aşağıdaki kod örneği, örnek olarak ve MaxConcurrentCallsMaxConcurrentInstances ö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

MaxConcurrentInstances özelliği, hizmetteki en fazla nesne sayısını InstanceContext belirtir. Özellik ile özellik arasındaki ilişkiyi MaxConcurrentInstances göz önünde bulundurmak InstanceContextMode önemlidir. ise InstanceContextModePerSession, sonuçta elde edilen değer toplam oturum sayısıdır. ise InstanceContextModePerCall, sonuçta elde edilen değer eşzamanlı çağrıların sayısıdır. En fazla nesne sayısı InstanceContext zaten mevcutken bir ileti gelirse, bir InstanceContext nesne kapatılıncaya kadar ileti tutulur.

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

Şunlara uygulanır