Batas Default untuk batas Situs <Web>

Gambaran Umum

Elemen <limits><siteDefaults> elemen mengonfigurasi pengaturan default yang membatasi jumlah bandwidth, jumlah koneksi, atau waktu koneksi habis untuk permintaan klien untuk server Web.

Catatan

<limits> Jika elemen dikonfigurasi di bagian <siteDefaults> dan di bagian <site> untuk situs tertentu, konfigurasi di bagian tersebut digunakan untuk situs tersebut<site>.

Kompatibilitas

Versi Catatan
IIS 8.5 Elemen <limits> tidak dimodifikasi dalam IIS 8.5.
IIS 8.0 Elemen <limits> tidak dimodifikasi dalam IIS 8.0.
IIS 7.5 Elemen <limits> tidak dimodifikasi dalam IIS 7.5.
IIS 7.0 Elemen <limits><siteDefaults> elemen diperkenalkan di IIS 7.0.
IIS 6.0 Elemen menggantikan <limits> pengaturan metabase IIS 6.0 berikut:
  • ConnectionTimeout
  • MaxBandwidth
  • MaxConnections

Siapkan

Elemen <limits><siteDefaults> elemen disertakan dalam penginstalan default IIS 7 dan yang lebih baru.

Bagaimana Caranya

Cara mengonfigurasi opsi batas koneksi default untuk server

  1. Buka Pengelola Layanan Informasi Internet (IIS):

    • Jika Anda menggunakan Windows Server 2012 atau Windows Server 2012 R2:

      • Pada bilah tugas, klik Manajer Server, klik Alat, lalu klik Pengelola Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows 8 atau Windows 8.1:

      • Tahan tombol Windows, tekan huruf X, lalu klik Panel Kontrol.
      • Klik Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows Server 2008 atau Windows Server 2008 R2:

      • Pada bilah tugas, klik Mulai, arahkan ke Alat Administratif, lalu klik Pengelola Layanan Informasi Internet (IIS).
    • Jika Anda menggunakan Windows Vista atau Windows 7:

      • Pada taskbar, klik Mulai, lalu klik Panel Kontrol.
      • Klik dua kali Alat Administratif, lalu klik dua kali Manajer Layanan Informasi Internet (IIS).
  2. Di panel Koneksi , lalu klik simpul Situs .

  3. Di panel Situs , klik Atur Default Situs Web... di panel Tindakan .
    Cuplikan layar panel Situs dengan Situs Web Default tercantum.

  4. Dalam kotak dialog Default Situs Web , perluas Batas, tentukan opsi batas, lalu klik OK.
    Cuplikan layar dialog Default Situs Web dengan opsi Umum, Perilaku, Batas Koneksi, dan Pelacakan Permintaan Gagal.

Konfigurasi

Atribut

Atribut Deskripsi
connectionTimeout Atribut timeSpan opsional.

Menentukan waktu (dalam detik) yang ditunggu IIS sebelum memutuskan koneksi yang dianggap tidak aktif. Koneksi dapat dianggap tidak aktif karena alasan berikut:
  • Timer HTTP.sys Timer_ConnectionIdle kedaluwarsa. Koneksi kedaluwarsa dan tetap menganggur.
  • Timer HTTP.sys Timer_EntityBody kedaluwarsa. Koneksi kedaluwarsa sebelum badan entitas permintaan tiba. Ketika jelas bahwa permintaan memiliki isi entitas, API HTTP menyalakan timer Timer_EntityBody. Awalnya, batas timer ini diatur ke nilai connectionTimeout. Setiap kali indikasi data lain diterima pada permintaan ini, API HTTP mengatur ulang timer untuk memberikan koneksi lebih banyak menit seperti yang ditentukan dalam atribut connectionTimeout.
  • Timer HTTP.sys Timer_AppPool kedaluwarsa. Koneksi kedaluwarsa karena permintaan menunggu terlalu lama dalam antrean kumpulan aplikasi untuk aplikasi server untuk menghapus antrean dan memprosesnya. Durasi waktu habis ini adalah connectionTimeout.
Nilai defaultnya adalah 00:02:00 (dua menit).
maxBandwidth Atribut uint opsional.

Menentukan bandwidth jaringan maksimum, dalam byte per detik, yang digunakan untuk situs. Gunakan pengaturan ini untuk membantu mencegah kelebihan beban jaringan dengan aktivitas IIS.

Nilai defaultnya adalah 4294967295.
maxConnections Atribut uint opsional.

Menentukan jumlah maksimum koneksi untuk sebuah situs. Gunakan pengaturan ini untuk membatasi jumlah koneksi klien simultan.

Nilai defaultnya adalah 4294967295.
maxUrlSegments Atribut uint opsional.

Menentukan jumlah maksimum segmen yang diizinkan dalam Url.

Nilai defaultnya adalah 32.

Elemen Anak

Tidak ada.

Sampel Konfigurasi

Sampel konfigurasi berikut menentukan opsi default limits untuk IIS 7 dan yang lebih baru.

<system.applicationHost>
   <sites>
      <siteDefaults>
         <limits connectionTimeout="00:02:00" />
      </siteDefaults>
   </sites>
</system.applicationHost>

Kode Sampel

Sampel kode berikut mengonfigurasi opsi default limits untuk IIS 7 dan yang connectionTimeout lebih baru dengan 3 menit.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.limits.connectionTimeout:"00:03:00" /commit:apphost

Catatan

Anda harus memastikan untuk mengatur parameter penerapan ke apphost saat Anda menggunakan AppCmd.exe untuk mengonfigurasi pengaturan ini. Ini menerapkan pengaturan konfigurasi ke bagian lokasi yang sesuai dalam file ApplicationHost.config.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection sitesSection = config.GetSection("system.applicationHost/sites");
         ConfigurationElement siteDefaultsElement = sitesSection.GetChildElement("siteDefaults");

         ConfigurationElement limitsElement = siteDefaultsElement.GetChildElement("limits");
         limitsElement["connectionTimeout"] = TimeSpan.Parse("00:03:00");

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")
      Dim siteDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("siteDefaults")

      Dim limitsElement As ConfigurationElement = siteDefaultsElement.GetChildElement("limits")
      limitsElement("connectionTimeout") = TimeSpan.Parse("00:03:00")

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults");

var limitsElement = siteDefaultsElement.ChildElements.Item("limits");
limitsElement.Properties.Item("connectionTimeout").Value = "00:03:00";

adminManager.CommitChanges();

Vbscript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults")

Set limitsElement = siteDefaultsElement.ChildElements.Item("limits")
limitsElement.Properties.Item("connectionTimeout").Value = "00:03:00"

adminManager.CommitChanges()