struktur HTTP_TIMEOUT_LIMIT_INFO (http.h)
Struktur HTTP_TIMEOUT_LIMIT_INFO menentukan batas waktu habis koneksi khusus aplikasi.
Struktur ini harus digunakan saat mengatur atau mengkueri HttpServerTimeoutsProperty pada Grup URL, sesi server, atau antrean permintaan.
Sintaks
typedef struct _HTTP_TIMEOUT_LIMIT_INFO {
HTTP_PROPERTY_FLAGS Flags;
USHORT EntityBody;
USHORT DrainEntityBody;
USHORT RequestQueue;
USHORT IdleConnection;
USHORT HeaderWait;
ULONG MinSendRate;
} HTTP_TIMEOUT_LIMIT_INFO, *PHTTP_TIMEOUT_LIMIT_INFO;
Anggota
Flags
Struktur HTTP_PROPERTY_FLAGS yang menentukan apakah properti ada.
EntityBody
Waktu, dalam detik, memungkinkan badan entitas permintaan tiba.
HTTP Server API mengaktifkan timer ini ketika permintaan memiliki badan entitas. Kedaluwarsa timer awalnya diatur ke nilai yang dikonfigurasi. Ketika HTTP Server API menerima indikasi data tambahan pada permintaan, API akan mengatur ulang timer untuk memberikan interval lain pada koneksi.
DrainEntityBody
Waktu, dalam detik, diizinkan bagi API Server HTTP untuk menguras isi entitas pada koneksi Keep-Alive.
Pada koneksi Keep-Alive, setelah aplikasi mengirim respons untuk permintaan dan sebelum badan entitas permintaan benar-benar tiba, HTTP Server API mulai menguras sisa isi entitas untuk mencapai permintaan lain yang berpotensi disalurkan dari klien. Jika waktu untuk menguras isi entitas yang tersisa melebihi periode yang diizinkan, koneksi akan kehabisan waktu.
RequestQueue
Waktu, dalam detik, diizinkan agar permintaan tetap berada dalam antrean permintaan sebelum aplikasi mengambilnya.
IdleConnection
Waktu, dalam detik, diizinkan untuk koneksi diam.
Batas waktu ini hanya diberlakukan setelah permintaan pertama pada koneksi dirutekan ke aplikasi. Untuk informasi lebih lanjut, lihat bagian Keterangan.
HeaderWait
Waktu, dalam detik, diizinkan bagi API Server HTTP untuk mengurai header permintaan.
Batas waktu ini hanya diberlakukan setelah permintaan pertama pada koneksi dirutekan ke aplikasi. Untuk informasi lebih lanjut, lihat bagian Keterangan.
MinSendRate
Tingkat pengiriman minimum, dalam byte per detik, untuk respons. Tingkat pengiriman respons default adalah 150 byte per detik.
Untuk menonaktifkan timer ini, atur MinSendRate ke MAXULONG.
Keterangan
Struktur ini digunakan dalam fungsi HttpQueryServerSessionProperty, dan HttpSetServerSessionProperty untuk mengatur atau mengkueri batas waktu koneksi. Tabel berikut mencantumkan batas waktu default.
Pengatur Waktu | HTTP Server API Default | Konfigurasi Luas API Server HTTP | Konfigurasi Khusus Aplikasi |
---|---|---|---|
EntityBody | 2 Menit | Tidak | Ya |
DrainEntityBody | 2 Menit | Tidak | Ya |
RequestQueue | 2 Menit | Tidak | Ya |
IdleConnection | 2 Menit | Ya | Terbatas |
HeaderWait | 2 Menit | Ya | Terbatas |
MinSendRate | 150 byte/detik | Tidak | Ya |
Memanggil HttpSetServerSessionProperty atau HttpSetUrlGroupProperty untuk mengonfigurasi batas waktu koneksi hanya memengaruhi aplikasi panggilan dan tidak menetapkan batas waktu habis driver yang luas. Timer koneksi diam dan tunggu header dapat dikonfigurasi untuk semua aplikasi HTTP dengan memanggil HttpSetServiceConfiguration. Hak istimewa admin diperlukan untuk mengonfigurasi batas waktu luas HTTP Server API. Konfigurasi luas HTTP Server API memengaruhi semua aplikasi HTTP di komputer dan bertahan saat komputer dimatikan.
Timer IdleConnection dan HeaderWait khusus aplikasi diatur secara terbatas. HTTP Server API tidak dapat menentukan antrean permintaan atau grup URL yang dikaitkan dengan permintaan hingga header telah diurai. Oleh karena itu, HTTP Server API memberlakukan timer IdleConnection dan HeaderWait default untuk permintaan pertama pada koneksi. Permintaan berikutnya pada koneksi Keep-Alive akan menggunakan batas waktu khusus aplikasi.
Mengatur batas waktu pada sesi server memengaruhi semua Grup URL di bawah sesi server. Namun, jika Grup URL telah mengonfigurasi batas waktu, pengaturan untuk Grup URL lebih diutamakan daripada konfigurasi sesi server.
Mengatur batas waktu ke nol pada sesi server menyebabkan API Server HTTP kembali ke nilai default untuk timer tersebut. Untuk timer yang diatur pada Grup URL, batas waktu sesi server digunakan jika ada, jika tidak, default HTTP Server API digunakan.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2008 [hanya aplikasi desktop] |
Header | http.h |
Lihat juga
Struktur HTTP Server API Versi 2.0