Memproses Transaksi Komit Two-Phase

Topik ini membahas apa yang terjadi dengan transaksi komit dua fase (2PC) saat diproses oleh Microsoft Distributed Transaction Coordinator (DTC) di COM+, Transaction Integrator (TI), dan CICS.

Proses dimulai ketika aplikasi klien memanggil metode pada aplikasi .NET yang berisi objek TI. .NET kemudian mengalokasikan utas untuk transaksi dari kumpulan utas penggunanya, memulai transaksi, dan meneruskan parameter input metode ke lingkungan run-time TI. Utas ini diblokir dari melakukan transaksi hingga respons diterima dari host CICS. Ini adalah unit waktu kerja, yang sebagian besar terdiri dari waktu yang dibutuhkan aplikasi CICS untuk memproses logika bisnis transaksi dan mendapatkan akses ke database sesuai kebutuhan (dengan asumsi bahwa kecepatan transmisi mengikuti kecepatan LAN). Ketika parameter output metode dikirim kembali ke .NET dari host, pesan penerapan dikirim ke DTC.

DTC mengaktifkan fase persiapan untuk transaksi, sehingga TI mengalokasikan satu utas dari kumpulan utas 2PC miliknya dan tetap diblokir sampai pesan commit dari host tiba. Setelah semua fork transaksi disiapkan, DTC mengirim pesan lengkap penerapan ke .NET, lalu mengirim parameter output metode dan mengembalikan nilai kembali ke aplikasi klien panggilan dan merilis utas.

Ini menyelesaikan transaksi untuk pengguna, tetapi monitor transaksi (DTC dan CICS) masih harus menyelesaikan fase kedua komit, dan sekali lagi, utas dari kumpulan utas TI 2PC dialokasikan untuk setiap transaksi yang melaksanakan fase kedua komit tersebut.

Lihat Juga

Program Transaksi yang Berjalan untuk Waktu yang Lama
Panduan Kinerja Integrator Transaksi