Bagikan melalui


penerapan Two-Phase

Operasi logika bisnis tertentu dapat melibatkan beberapa program yang berjalan di beberapa komputer. Dalam desain ini, transaksi tidak dianggap lengkap kecuali semua program yang terlibat berhasil menyelesaikan eksekusinya. Agar program ini memverifikasi bahwa semua program lain yang merupakan bagian dari transaksi telah menyelesaikan transaksi mereka, mereka harus menggunakan protokol penerapan dua fase (2PC).

Istilah transaksi (atau turunannya, seperti transaksi), mungkin menyesatkan. Dalam banyak kasus, istilah transaksi menjelaskan satu program yang dijalankan pada komputer mainframe yang tidak menggunakan protokol 2PC. Namun, dalam kasus lain, ini digunakan untuk menunjukkan operasi yang dilakukan oleh beberapa program di beberapa komputer yang menggunakan protokol 2PC.

Protokol 2PC begitu dinamai karena menggunakan dua fase berikut sebelum melakukan operasi yang dilakukan:

  • Fase 1—Persiapkan. Pada fase ini, masing-masing program yang terlibat dalam transaksi mengirimkan pesan ke Manajer TP, seperti Koordinator Transaksi Terdistribusi Microsoft (MS DTC), memberi tahu Manajer TP bahwa ia siap dan mampu melakukan bagian dari operasi. Fase ini juga dikenal sebagai persiapan karena program disiapkan baik untuk melakukan perubahan atau memutar kembali perubahan. Jika Manajer TP menerima konfirmasi dari masing-masing program yang terlibat, ia melanjutkan ke fase 2.

  • Fase 2—Penerapan atau Putar Kembali. Pada fase ini, Manajer TP menginstruksikan setiap program untuk menerapkan atau memutar kembali semua perubahan yang diminta sebagai bagian dari transaksi. Pemutaran kembali yang dijalankan dengan benar harus mengembalikan sistem ke keadaan semula.

Catatan

Status antara fase 1 dan fase 2 dikenal sebagai status dalam keraguan. Pengembang yang menggunakan .NET dalam aplikasi mereka dapat memutuskan bagian mana dari aplikasi yang memerlukan akses ke TP dan bagian mana yang tidak. TI memperluas pilihan ini ke mainframe, juga, dengan menangani panggilan yang memerlukan transaksi dan panggilan yang tidak. Untuk aplikasi yang memerlukan integrasi penuh antara penerapan dua fase berbasis Windows dan transaksi Sync Level 2 berbasis mainframe, TI menyediakan semua fungsionalitas yang diperlukan. TI melakukan ini tanpa mengharuskan Anda mengubah aplikasi klien, tanpa menempatkan kode yang dapat dieksekusi pada mainframe, dan dengan sedikit atau tanpa perubahan pada TPs mainframe. Aplikasi klien tidak perlu membedakan antara komponen TI dan referensi komponen lainnya.

Gambar berikut menunjukkan bagaimana aplikasi klien berbasis Windows secara implisit menggunakan Koordinator Transaksi Terdistribusi Microsoft (DTC) untuk mengoordinasikan penerapan dua fase transaksi terdistribusi yang melibatkan SQL Server dan TP CICS. DTC mengoordinasikan transaksi 2PC.

Gambar yang menunjukkan aplikasi klien menggunakan Integrator Transaksi dan DTC untuk mengoordinasikan penerapan dua fase antara SQL Server dan aplikasi CICS.
Aplikasi klien menggunakan Integrator Transaksi dan DTC untuk mengoordinasikan penerapan dua fase antara SQL Server dan aplikasi CICS

Catatan

Integrator Transaksi hanya mendukung 2PC saat menyambungkan ke mainframe melalui LU 6.2 (APPC) dengan Pemrosesan yang Dimulai Windows. Saat menyambungkan langsung melalui TCP/IP tidak ada dukungan 2PC yang tersedia melalui TI.

Aplikasi klien menggunakan TI dan DTC

Transaksi penerapan dua fase (2PC) melibatkan sejumlah komponen. Agar berhasil menggunakan Integrator Transaksi (TI), Anda harus memahami komponen dan terminologi 2PC berikut:

Titik Sinkronisasi Tingkat 2
TPs dapat berinteraksi satu sama lain dengan menggunakan protokol LU6.2 di salah satu dari tiga tingkat sinkronisasi: Sync Level 0, Sync Level 1, atau Sync Level 2. Hanya salah satu dari tiga tingkat sinkronisasi ini, Sync Level 2, yang menggunakan protokol 2PC. Sync Level 0 tidak memiliki integritas pesan, sedangkan Sync Level 1 mendukung integritas data terbatas.

Manajer TP
Program transaksi (TP) Manager adalah layanan sistem yang bertanggung jawab untuk mengoordinasikan hasil transaksi untuk dapat mencapai atomitas. Manajer TP memastikan bahwa manajer sumber daya mencapai keputusan yang konsisten tentang apakah transaksi harus berkomitmen atau membatalkan. Pengelola TP Windows adalah MS DTC.

Layanan sinkronisasi ulang
Layanan Sinkronisasi Ulang LU6.2 adalah komponen Server Integrasi Host yang bekerja dengan MS DTC untuk melakukan pemulihan otomatis ke keadaan yang konsisten sebagai akibat dari kegagalan pada titik mana pun dalam transaksi 2PC. Layanan Sinkronisasi Ulang LU6.2 diinstal secara default saat menginstal Server Integrasi Host.

Resource Manager
Manajer sumber daya adalah layanan sistem yang mengelola data tahan lama. Aplikasi server menggunakan manajer sumber daya untuk mempertahankan status aplikasi yang tahan lama, seperti catatan inventori yang tersedia, pesanan tertunda, dan piutang akun. Manajer sumber daya bekerja sama dengan manajer transaksi untuk menyediakan aplikasi dengan jaminan atomitas dan isolasi (dengan menggunakan protokol 2PC). Microsoft SQL Server ™ dan TI adalah contoh manajer sumber daya.

Lihat juga

Transaksi Windows vs. Transaksi Mainframe
Pemrosesan Transaksi Online