Direkomendasikan: Koleksi kesalahan ASP Koleksi kesalahan ASP bermanfaat bagi pemula, dan mungkin para ahli akan melupakannya. Koleksi Kesalahan ASP Bahasa Microsoft VBScript*Kesalahan (0x800A03E9)-> memori yang tidak memadai Microsoft VBScript Bahasa*Kesalahan (0x800A03EA)-> Pidato*Kesalahan Microsoft VBScript Bahasa*(0x800a03ea)-> Pidato*Kesalahan Microsoft VBScript Bahasa*
Permintaan ASP diinisialisasi oleh objek WAM. Objek WAM kemudian mengirimkannya ke ASP-Runtime. ASP-Runtime meresponsnya dengan membuat objek halaman internal.Objek WAM adalah objek utas gratis. Ketika itu memanggil ekstensi ISAPI seperti ASP.DLL, ia menggunakan utas model MTA yang dialokasikan oleh kumpulan utas yang dikelola oleh IIS-Runtime.
Masalah sulit yang dihadapi saat membuat ekstensi ISAPI adalah bagaimana menangani konkurensi dan sinkronisasi utas yang disebabkan oleh kumpulan utas MTA ini. ASP-Runtime menyederhanakan masalah dengan mengalihkan setiap permintaan ASP ke satu unit berulir (STA) sebelum menjalankan skrip ASP. ASP-Runtime mengelola kumpulan benang helper sta mandiri (di latar belakang, ASP sebenarnya melakukan ini dengan menggunakan kumpulan com thread). Desainer ASP membuat skema pengumpulan utas ini untuk memberikan keseimbangan yang dioptimalkan antara konkurensi dan pemanfaatan sumber daya sambil menghilangkan kebutuhan pemrogram untuk mencapai sinkronisasi.
Bagaimana asp-runtime beralih setiap permintaan dari utas MTA ke utas STA. Mekanisme penjadwalan ASP-Runtime menempatkan setiap permintaan ke antrian permintaan pusat. Utas STA di kumpulan utas yang dikelola oleh ASP memantau antrian dan memproses permintaan dengan cara pertama-pertama. Perhatikan bahwa ukuran kumpulan utas ini berubah secara dinamis. ASP-Runtime menghasilkan utas tambahan selama komunikasi puncak, dan merilis utas ketika ada lebih sedikit komunikasi.
Beralih ke Sta Thread secara efektif memecahkan masalah konkurensi, tetapi ini juga memiliki dampak signifikan pada kinerja. ISAPI Extended DLL yang diproses dalam skuadron utas MTA terpisah memberikan waktu respons yang lebih cepat.
IIS menyediakan metode untuk mengatur ukuran maksimum kumpulan utas STA dan meminta antrian. Ukuran kumpulan utas dikendalikan oleh kunci primer AsppRocessorthReadmax di metadatabase IIS. Pengaturan default untuk kunci utama ini adalah 25 per proses per prosesor (komentar: yang terbaik adalah menemukan dokumentasi Microsoft yang relevan untuk membuktikan nomor ini. Beberapa orang mengatakan bahwa nomor ini 10 per CPU). Dengan kata lain, di komputer empat-prosesor, setiap proses yang memproses ASP dapat memiliki hingga 100 utas tambahan. Kecuali masalah yang terkait dengan tuning kumpulan utas telah dipertimbangkan, mengubah nilai kunci ini harus dihindari. Perhatikan bahwa Anda tidak dapat menggunakan Internet Server Manager untuk mengubah pengaturan ini. Itu harus dimodifikasi menggunakan skrip manajemen atau aplikasi VB.
IIS menetapkan kapasitas maksimum untuk antrian permintaan ASP. Secara default, ASP-Runtime memungkinkan antrian untuk menahan hingga 3000 permintaan (dokumen Microsoft yang berbeda menyatakan bahwa antrian ini hanya dapat menampung 500 permintaan). Setelah terlampaui, permintaan ASP entri nanti akan ditolak, dan pesan kesalahan dikembalikan sebagai server terlalu sibuk.
Kunci primer AsppRocessorthReadMax dan kunci primer AsprequestqueemaMax dapat diprogram menggunakan objek manajemen IIS dan ADSI. Misalnya, dalam proyek EXE standar, lihat pustaka Tipe DS Aktif dan tulis kode berikut:
Redup mywebserver sebagai aktivis.iads
Set mywebserver = getoject (iis: // localhost/w3svc)
Mywebserver.put aspprocessorthreadmax, 30
Mywebserver.put asprequestqueueemax, 1500
Mywebserver.setinfo
Berikut ini adalah ringkasan singkat tentang cara kerja kumpulan utas ASP di IIS yang diinstal secara default pada satu komputer prosesor. Kolam utas ini memiliki 25 utas helper STA yang tersedia untuk setiap prosesor. Ketika sebuah permintaan tiba, itu ditempatkan dalam antrian permintaan. ASP-Runtime menjadwalkan utas Idle STA dari kumpulan utas, jika ada yang tersedia (perhatikan bahwa skema ini memungkinkan utas apa pun di kumpulan utas untuk memproses permintaan). Jika tidak ada utas penolong gratis, permintaan akan ditambahkan ke antrian. Selama antrian tidak mencapai kapasitas maksimum default, semua permintaan akan diproses.
Pemrograman Aplikasi Terdistribusi dengan Visual Basic 6.0 dari Ted Pattison
Bagikan: Fitur Teknis dan Metode Penggunaan ASP Beberapa tahun yang lalu, satu -satunya saluran dalam industri untuk rilis beranda dinamis adalah model CGI (Common Ga Teway Interface). Meskipun solusi teknis selanjutnya seperti ISAPI, NSAPI dan JDBC telah meningkat dibandingkan dengan CGI, solusi ini masih diukur dari realitas teknis Jaringan Perusahaan (Intranet).