Bagikan melalui


Membandingkan Pemberitahuan Native-Code dan Managed-Code

Meskipun alur pemrosesan permintaan terintegrasi di inti server Web IIS 7 memungkinkan pengembang kode asli untuk menulis modul HTTP di C++, pemberitahuan peristiwa yang tersedia untuk pengembang kode asli dan kode terkelola tidak identik. Pengembang yang memigrasikan modul HTTP dari bahasa terkelola seperti C# ke kode asli harus mengatasi perbedaan ini ketika mereka membuat modul baru mereka.

Pemberitahuan Global

Dengan IIS 7, pengembang sekarang dapat membuat modul HTTP kode asli yang memproses pemberitahuan di tingkat global. Di versi IIS sebelumnya, pengembang dapat membuat modul HTTP yang memproses pemberitahuan hanya pada tingkat permintaan. Modul HTTP yang memproses pemberitahuan di tingkat global digunakan untuk memproses pemberitahuan untuk berbagai peristiwa tingkat server.

Tabel berikut mencantumkan metode pemberitahuan global yang tersedia untuk pengembang kode asli.

Metode pemberitahuan peristiwa Deskripsi
OnGlobalApplicationResolveModules Dipanggil ketika IIS menyelesaikan modul terdaftar.
Mulai Aplikasi OnGlobal Dipanggil ketika IIS memulai aplikasi.
OnGlobalApplicationStop Dipanggil ketika IIS keluar dari aplikasi.
OnGlobalCacheCleanup Dipanggil ketika IIS menghapus cache.
OnglobalCacheoperation Dipanggil ketika IIS melakukan operasi terkait cache.
OnGlobalConfigurationChange Dipanggil ketika perubahan dilakukan pada file konfigurasi.
OnGlobalCustomNotification Dipanggil saat modul menaikkan pemberitahuan yang ditentukan pengguna.
OnGlobalFileChange Dipanggil ketika file di dalam situs Web diubah.
OnGlobalHealthCheck Dipanggil ketika operasi terkait kesehatan dijalankan.
OnGlobalPreBeginRequest Dipanggil sebelum permintaan memasuki alur pemrosesan permintaan terintegrasi.
OnGlobalRSCAQuery Dipanggil saat kueri Status dan Kontrol Run-Time dijalankan.
OnGlobalStopListening Dipanggil ketika IIS berhenti menerima permintaan baru.
OnGlobalThreadCleanup Dipanggil ketika IIS mengembalikan utas ke kumpulan utas.
OnglobalTraceEvent Dipanggil ketika peristiwa pelacakan dinaikkan.

Membandingkan Pemberitahuan Permintaan

Meskipun metode pemberitahuan permintaan untuk modul HTTP kode asli dan kode terkelola serupa dalam banyak hal, metode tersebut tidak sepenuhnya dianalogikan. Misalnya, daftar metode pemberitahuan permintaan deterministik hampir identik untuk modul kode asli dan kode terkelola, namun daftar metode pemberitahuan permintaan nondeterministik sangat berbeda.

Pemberitahuan Permintaan Deterministik Native-Code

Tabel berikut mencantumkan metode pemberitahuan permintaan deterministik yang tersedia untuk pengembang kode asli.

Metode pemberitahuan peristiwa Metode pemberitahuan pasca-peristiwa
OnBeginRequest OnPostBeginRequest
OnAuthenticateRequest OnPostAuthenticateRequest
OnAuthorizeRequest OnPostAuthorizeRequest
OnResolveRequestCache OnPostResolveRequestCache
OnMapRequestHandler OnPostMapRequestHandler
OnAcquireRequestate OnPostAcquireRequestState
OnPreExecuteRequestHandler OnPostPreExecuteRequestHandler
OnExecuteRequestHandler OnPostExecuteRequestHandler
OnReleaseRequestate OnPostReleaseRequestState
OnUpdateRequestCache OnPostUpdateRequestCache
OnLogRequest OnPostLogRequest
OnEndRequest OnPostEndRequest

Pemberitahuan Permintaan Deterministik Managed-Code

Tabel berikut mencantumkan metode pemberitahuan permintaan deterministik yang tersedia untuk pengembang kode terkelola.

Metode pemberitahuan peristiwa Metode pemberitahuan pasca-peristiwa
BeginRequest (Tidak Ada)
AuthenticateRequest PostAuthenticateRequest
Authorizerequest PostAuthorizeRequest
ResolveRequestCache PostResolveRequestCache
MapRequestHandler PostMapRequestHandler
AcquireRequestState PostAcquireRequestState
PreRequestHandlerExecute (Tidak Ada)
RequestHandlerExecute PostRequestHandlerExecute
ReleaseRequestState PostReleaseRequestState
UpdateRequestCache PostUpdateRequestCache
LogRequest PostLogRequest
EndRequest (Tidak Ada)

Native-Code Pemberitahuan Permintaan Nondeterministik

Tabel berikut mencantumkan metode pemberitahuan permintaan nondeterministik yang tersedia untuk pengembang kode asli.

Metode pemberitahuan peristiwa Metode pemberitahuan pasca-peristiwa
OnAsyncCompletion (Tidak Ada)
OnCustomRequestNotification (Tidak Ada)
OnMapPath (Tidak Ada)
OnReadEntity (Tidak Ada)
Respons OnSend (Tidak Ada)

Managed-Code Pemberitahuan Permintaan Nondeterministik

Tabel berikut mencantumkan metode pemberitahuan permintaan nondeterministik yang tersedia untuk pengembang kode terkelola.

Metode pemberitahuan peristiwa Metode pemberitahuan pasca-peristiwa
PreSendRequestHeaders (Tidak Ada)
PreSendRequestContent (Tidak Ada)

Lihat juga

Membuat Modul HTTP Native-Code
Merancang Modul HTTP Native-Code