Memanggil Transaksi

Invoke Transactions digunakan untuk memanggil satu atau beberapa Perintah Cluster di Node Target. Ini mirip dengan panggilan prosedur jarak jauh yang dilakukan ke perintah yang ditentukan di Cluster.

Dengan cara yang mirip seperti Menulis Transaksi, Panggil dukungan Transaksi Transaksi Terjadwal dan Tidak Tepat Waktu. Lihat Tindakan Terjadwal dan Tidak Tepat Waktu untuk informasi lebih lanjut tentang Transaksi Berwaktu.

Transaksi Pemanggilan Tidak Waktunya

Urutan operasi Transaksi Panggilan Tanpa Waktu
Gambar 1: Transaksi Pemanggilan Tanpa Waktu

Panggil Tindakan Permintaan

Arah: Inisiator -> Target

Serupa dengan Tindakan Permintaan Baca dan Tindakan Permintaan Tulis, dalam Tindakan ini Pemrakarsa memberi Target:

  • Permintaan Memanggil: daftar jalur ke Perintah Cluster, serta argumen opsional untuk perintah, bernama Kolom Perintah.
  • Permintaan Berwaktu: tanda yang menunjukkan apakah tindakan ini merupakan bagian dari Waktu Panggil Transaksi.
  • Suppress Response: tanda yang menunjukkan apakah Tindakan Respons Panggil harus disembunyikan.
  • ID Interaksi: bilangan bulat yang digunakan untuk mencocokkan Action Permintaan Panggilan ke Action Respons Panggilan.

Memanggil Tindakan Respons

Arah: Target -> Inisiator

Setelah menerima Tindakan Permintaan Invoke, Target akan menyelesaikan transaksi dengan Tindakan Respons Invoke yang melakukan:

  • Memanggil Respons: daftar respons atau status perintah untuk setiap panggilan dikirim.
  • ID Interaksi: bilangan bulat yang digunakan untuk mencocokkan Tindakan Respons Invoke dengan {i>Invoke Request Action<i}.

Pembatasan Pemanggilan Tidak Tepat Waktu

Invoke Request Action mungkin adalah groupcast, tetapi dalam hal ini Suppress Tanda respons harus ditetapkan. Alasannya adalah jika tidak jaringan mungkin dibanjiri oleh respons simultan dari setiap anggota kelompok.

Untuk mengaktifkan perilaku ini, Jalur yang digunakan dalam daftar Permintaan Pemanggilan dapat berisi Grup dan dapat juga berisi karakter pengganti, tetapi hanya di Endpoint kolom tersebut. Selain itu, jika {i>Action <i}adalah {i>groupcast<i}, transaksi ini dihentikan tanpa respons.

Transaksi Panggilan Berjangka Waktu

Mirip dengan Transaksi Tulis Berjangka Waktu, Transaksi Panggilan Berjangka Waktu juga dimulai dengan Tindakan Permintaan Berwaktu.

Urutan operasi Transaksi Pemanggilan Berwaktu
Gambar 2: Transaksi Pemanggilan Berjangka Waktu

Tindakan Permintaan Berjangka Waktu

Arah: Inisiator -> Target

Inisiator memulai Transaksi yang mengirimkan Action ini yang berisi:

  • Waktu tunggu: berapa milidetik transaksi ini dapat tetap terbuka. Selama periode ini, tindakan berikutnya yang dikirim oleh Inisiator akan dianggap valid.

Setelah Tindakan Permintaan Berwaktu diterima, Target harus mengonfirmasi Tindakan Permintaan Berwaktu dengan Tindakan Respons Status. Setelah Inisiator menerima Tindakan Respons Status melaporkan tidak ada kesalahan, permintaan akan mengirim Permintaan Pemanggilan {i>Action<i}.

Panggil Tindakan Permintaan

Sama seperti Invoke Request Action yang dijelaskan sebelumnya.

Memanggil Tindakan Respons

Sama seperti Invoke Response Action yang dijelaskan sebelumnya.

Pembatasan Pemanggilan Berwaktu

Semua perintah pemanggilan dapat dipanggil pada Interaksi Berwaktu. Tindakan Permintaan Berjangka Waktu, Tindakan Permintaan Panggilan, dan Tindakan Respons Panggilan hanya untuk Unicast sehingga tidak dapat digunakan sebagai groupcast pada Transaksi Panggilan Berjangka Waktu.

Tindakan Permintaan Pemanggilan mendukung penggunaan jalur dengan Grup, serta karakter pengganti, namun Tindakan Invoke Response tidak mendukung penggunaan karakter pengganti.