เรียกใช้ธุรกรรม

เรียกใช้ธุรกรรมใช้สำหรับเรียกใช้คำสั่งคลัสเตอร์อย่างน้อย 1 รายการในโหนดเป้าหมาย ซึ่งจะคล้ายกับการเรียกใช้กระบวนการระยะไกลไปยังคำสั่งที่กำหนดไว้ในคลัสเตอร์

วิธีเรียกใช้การสนับสนุนธุรกรรม แบบกำหนดเวลาและแบบไม่กำหนดเวลานั้นคล้ายกับการเขียนธุรกรรม ดูข้อมูลเพิ่มเติมเกี่ยวกับธุรกรรมแบบกำหนดเวลาได้จากส่วนการดำเนินการตามกำหนดเวลาและโดยไม่กำหนดเวลา

ธุรกรรมการเรียกใช้ที่ไม่กำหนดเวลา

ลำดับการดำเนินการของธุรกรรมการเรียกใช้ที่ไม่ได้กำหนดเวลา
ภาพที่ 1: ธุรกรรมการเรียกใช้ที่ไม่กำหนดเวลา

เรียกใช้การดำเนินการคำขอ

ทิศทาง: ตัวเริ่มต้น -> เป้าหมาย

เช่นเดียวกับการส่งคำขออ่านและการส่งคำขอเขียน ในการดำเนินการนี้ ผู้เริ่มต้นจะให้ข้อมูลต่อไปนี้แก่เป้าหมาย

  • ส่งคำขอ: รายการเส้นทางไปยังคำสั่งคลัสเตอร์ รวมถึงอาร์กิวเมนต์เสริมสำหรับคำสั่ง ชื่อช่องคำสั่ง
  • คำขอที่กำหนดเวลา: ธงที่ระบุว่าการดำเนินการนี้เป็นส่วนหนึ่งของธุรกรรม Invoke Transaction แบบกำหนดเวลาหรือไม่
  • ระงับการตอบสนอง: ธงที่ระบุว่าควรระงับการดำเนินการตอบกลับเรียกใช้หรือไม่
  • รหัสการโต้ตอบ: จำนวนเต็มที่ใช้สำหรับจับคู่การดำเนินการตามคำขอกับการดำเนินการตอบกลับ

เรียกใช้การดำเนินการตอบกลับ

ทิศทาง: เป้าหมาย -> ตัวเริ่มต้น

หลังจากที่เป้าหมายได้รับการดำเนินการคำขอเรียกใช้ ระบบจะสรุปธุรกรรมด้วยการดำเนินการตอบกลับเรียกใช้ที่มีการทำงานต่อไปนี้

  • การตอบกลับการเรียกใช้: รายการการตอบกลับคำสั่งหรือสถานะสำหรับทุกคำขอเรียกใช้ที่ส่ง
  • รหัสการโต้ตอบ: จำนวนเต็มที่ใช้สำหรับจับคู่การดำเนินการตอบกลับเรียกใช้กับการดำเนินการส่งคำขอ

ข้อจำกัดการเรียกใช้ที่หมดเวลา

การส่งคำขอเรียกใช้อาจเป็น groupcast แต่ในกรณีนี้ต้องตั้งค่าแฟล็ก Suppress Response เหตุผลก็คือไม่เช่นนั้น เครือข่ายอาจจะถูกโจมตี โดยการตอบสนองพร้อมกันจากสมาชิกทุกคนในกลุ่ม

ในการเปิดใช้ลักษณะการทำงานนี้ เส้นทางที่ใช้ในรายการคำขอเรียกใช้อาจมี Groups และอาจมีไวลด์การ์ดได้ แต่จะมีเฉพาะในช่องปลายทางเท่านั้น นอกจากนี้ หากการดำเนินการคือ Groupcast ธุรกรรมนี้จะยุติโดยไม่มีการตอบกลับ

ธุรกรรมการเรียกใช้ตามลำดับเวลา

ธุรกรรมการเรียกใช้แบบกำหนดเวลาจะเหมือนกับ ธุรกรรมการเขียนแบบกำหนดเวลา คือจะเริ่มต้นด้วยการดำเนินการคำขอแบบกำหนดเวลา

ลำดับการดำเนินการของธุรกรรมการเรียกใช้ที่มีการกำหนดเวลา
ภาพที่ 2: ธุรกรรมการเรียกใช้ที่มีการกำหนดเวลา

การดำเนินการตามคำขอแบบกำหนดเวลา

ทิศทาง: ตัวเริ่มต้น -> เป้าหมาย

ผู้เริ่มต้นเริ่มธุรกรรมที่ส่งการดำเนินการนี้ ซึ่งประกอบด้วย

  • ระยะหมดเวลา: จำนวนมิลลิวินาทีที่ธุรกรรมนี้อาจยังคงเปิดอยู่ ในช่วงเวลานี้ การดำเนินการถัดไปที่ผู้เริ่มส่งจะถือว่าถูกต้อง

เมื่อได้รับการดำเนินการคำขอแบบกำหนดเวลาแล้ว เป้าหมายต้องรับทราบการดำเนินการตามคำขอแบบกำหนดเวลาที่มีการดำเนินการตอบกลับสถานะ เมื่อผู้เริ่มต้นได้รับ การดำเนินการตอบกลับสถานะซึ่งรายงานว่าไม่มีข้อผิดพลาด ก็จะส่งคำขอเรียกใช้ การดำเนินการ

เรียกใช้การดำเนินการคำขอ

เหมือนกับเรียกใช้การดำเนินการคำขอตามที่อธิบายไว้ก่อนหน้านี้

เรียกใช้การดำเนินการตอบกลับ

เหมือนกับเรียกใช้การดําเนินการตอบกลับที่อธิบายไว้ก่อนหน้านี้

ข้อจำกัดการเรียกใช้ตามกำหนดเวลา

ระบบอาจเรียกคำสั่งเรียกใช้ทั้งหมดในการโต้ตอบตามลำดับเวลา คำขอแบบกำหนดเวลา การดำเนินการ, การส่งคำขอเรียกใช้ และการทำงานตอบกลับการเรียกใช้งานได้ Unicast เท่านั้น ดังนั้นจึงไม่สามารถใช้เป็น Groupcast ใน การทำธุรกรรมแบบกำหนดเวลาได้

การดำเนินการส่งคำขอเรียกใช้รองรับการใช้งานเส้นทางกับ Groups รวมถึงไวลด์การ์ด แต่การดำเนินการตอบกลับเรียกใช้ไม่รองรับการใช้ไวลด์การ์ด