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

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

มีการสนับสนุน "ธุรกรรมที่กำหนดเวลา" และ "ธุรกรรมแบบกำหนดเวลา" ในลักษณะเดียวกันกับฟีเจอร์ "ธุรกรรมแบบเขียน" ดูข้อมูลเพิ่มเติมเกี่ยวกับธุรกรรมที่กำหนดเวลาได้ที่ส่วนการดำเนินการที่กำหนดเวลาและกำหนดเวลา

ธุรกรรมการเรียกใช้ที่ยังไม่มีเวลา

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

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

ทิศทาง: ผู้เริ่ม -> เป้าหมาย

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

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

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

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

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

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

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

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

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

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

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

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

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

ทิศทาง: ผู้เริ่ม -> เป้าหมาย

ผู้เริ่มต้นจะเริ่มธุรกรรมที่ส่งการดำเนินการนี้ที่มีข้อมูลต่อไปนี้

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

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

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

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

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

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

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

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

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