ServiceThrottlingBehavior Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengonfigurasi pengaturan throughput run-time yang memungkinkan Anda menyetel performa layanan.
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
- Warisan
-
ServiceThrottlingBehavior
- Penerapan
Contoh
Contoh kode berikut menunjukkan penggunaan ServiceThrottlingBehavior dari file konfigurasi aplikasi yang mengatur MaxConcurrentSessionsproperti , , MaxConcurrentCallsdan MaxConcurrentInstances ke 1 sebagai contoh. Pengalaman dunia nyata menentukan apa pengaturan optimal untuk aplikasi tertentu.
<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>
Keterangan
ServiceThrottlingBehavior Gunakan kelas untuk mengontrol berbagai pengaturan throughput yang membantu mencegah aplikasi Anda kehabisan memori.
Properti MaxConcurrentCalls membatasi jumlah pesan yang saat ini diproses di seluruh ServiceHost.
Properti MaxConcurrentInstances membatasi jumlah InstanceContext objek yang dijalankan pada satu waktu di seluruh ServiceHost.
Properti MaxConcurrentSessions membatasi jumlah sesi yang ServiceHost dapat diterima objek.
Karena penyeimbangan beban run-time memerlukan pengalaman menjalankan aplikasi, menggunakan ServiceThrottlingBehavior melalui file konfigurasi aplikasi adalah metode paling umum untuk memodifikasi eksekusi untuk memaksimalkan performa layanan.
Nota
Jejak ditulis setiap kali nilai properti ini tercapai. Jejak pertama ditulis sebagai peringatan.
Anda juga dapat mengatur nilai atribut ini dengan menggunakan <elemen serviceThrottling> dalam file konfigurasi aplikasi.
Konstruktor
| Nama | Deskripsi |
|---|---|
| ServiceThrottlingBehavior() |
Menginisialisasi instans baru dari kelas ServiceThrottlingBehavior. |
Properti
| Nama | Deskripsi |
|---|---|
| MaxConcurrentCalls |
Mendapatkan atau menetapkan nilai yang menentukan jumlah maksimum pesan yang diproses secara aktif di seluruh ServiceHost. |
| MaxConcurrentInstances |
Mendapatkan atau menetapkan nilai yang menentukan jumlah InstanceContext maksimum objek dalam layanan yang dapat dijalankan pada satu waktu. |
| MaxConcurrentSessions |
Mendapatkan atau menetapkan nilai yang menentukan jumlah maksimum sesi yang ServiceHost dapat diterima objek pada satu waktu. |
Metode
| Nama | Deskripsi |
|---|---|
| Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
| GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
| GetType() |
Mendapatkan Type instans saat ini. (Diperoleh dari Object) |
| MemberwiseClone() |
Membuat salinan dangkal dari Objectsaat ini. (Diperoleh dari Object) |
| ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
| Nama | Deskripsi |
|---|---|
| IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) |
Mengonfigurasi pengikatan untuk mendukung perilaku layanan. |
| IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) |
Mengonfigurasi layanan untuk mendukung perilaku layanan. |
| IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) |
Memvalidasi bahwa layanan dan host dapat mendukung perilaku layanan. |