लेन-देन शुरू करने के लिए इस्तेमाल किए जाने वाले निर्देश का इस्तेमाल, टारगेट नोड पर एक या उससे ज़्यादा क्लस्टर कमांड शुरू करने के लिए किया जाता है. यह क्लस्टर में तय की गई कमांड को किए गए रिमोट प्रोसीज़र कॉल जैसा होता है.
लिखने के लेन-देन की तरह ही, Invoke Transactions में टाइम किए गए और टाइम नहीं किए गए लेन-देन की सुविधा उपलब्ध होती है. टाइम किए गए लेन-देन के बारे में ज़्यादा जानकारी के लिए, कृपया टाइम की गई और टाइम नहीं की गई कार्रवाइयां सेक्शन देखें.
बिना समय के लेन-देन शुरू करना
कार्रवाई के अनुरोध को शुरू करना
दिशा: शुरू करने वाला -> टारगेट
पढ़ने के अनुरोध वाली कार्रवाई और लिखने के अनुरोध वाली कार्रवाई की तरह ही, इस कार्रवाई में अनुरोध करने वाला व्यक्ति, टारगेट को ये जानकारी देता है:
- अनुरोध शुरू करें: क्लस्टर कमांड के पाथ की सूची. साथ ही, कमांड के लिए ज़रूरी नहीं वाले ऐसे आर्ग्युमेंट जिन्हें कमांड फ़ील्ड कहा जाता है.
- टाइम किया गया अनुरोध: यह एक फ़्लैग है. इससे पता चलता है कि यह कार्रवाई, टाइम किए गए Invoke लेन-देन का हिस्सा है या नहीं.
- जवाब को छिपाएं: यह एक फ़्लैग है. इससे पता चलता है कि Invoke Response Action को छिपाना है या नहीं.
- इंटरैक्शन आईडी: यह एक पूर्णांक होता है. इसका इस्तेमाल, Invoke Request Action को Invoke Response Action से मैच करने के लिए किया जाता है.
जवाब देने के लिए कार्रवाई शुरू करना
दिशा: टारगेट -> शुरू करने वाला
टारगेट को Invoke Request Action मिलने के बाद, वह Invoke Response Action के साथ लेन-देन पूरा करेगा. इसमें ये चीज़ें शामिल होंगी:
- Invoke Responses: इसमें भेजे गए हर अनुरोध के लिए, कमांड के जवाब या स्थिति की सूची होती है.
- इंटरैक्शन आईडी: यह एक पूर्णांक होता है. इसका इस्तेमाल, Invoke Response Action को Invoke Request Action से मैच करने के लिए किया जाता है.
बिना समय सीमा वाली पाबंदियां
'अनुरोध पूरा करने के लिए कार्रवाई शुरू करें' ग्रुपकास्ट हो सकता है. हालांकि, इस मामले में जवाब न देने का विकल्प फ़्लैग सेट होना चाहिए. इसकी वजह यह है कि ऐसा न करने पर, ग्रुप के हर सदस्य से एक साथ मिलने वाले जवाबों की वजह से नेटवर्क पर बहुत ज़्यादा लोड पड़ सकता है.
इस सुविधा को चालू करने के लिए, Invoke Requests की सूची में इस्तेमाल किए गए पाथ में ग्रुप शामिल हो सकते हैं. इसके अलावा, इनमें वाइल्डकार्ड भी शामिल हो सकते हैं. हालांकि, ऐसा सिर्फ़ Endpoint फ़ील्ड पर किया जा सकता है. इसके अलावा, अगर कार्रवाई ग्रुपकास्ट की जा रही है, तो यह लेन-देन बिना किसी जवाब के खत्म हो जाता है.
लेन-देन को तय समय पर शुरू करने की सुविधा
टाइम किए गए राइट ट्रांज़ैक्शन की तरह ही, टाइम किए गए इनवोक ट्रांज़ैक्शन भी टाइम किए गए अनुरोध ऐक्शन से शुरू होते हैं.
अनुरोध की गई कार्रवाई का समय खत्म हो गया है
दिशा: शुरू करने वाला -> टारगेट
लेन-देन शुरू करने वाला व्यक्ति, यह कार्रवाई भेजता है. इसमें यह जानकारी शामिल होती है:
- टाइम आउट: यह लेन-देन कितने मिलीसेकंड तक खुला रह सकता है. इस अवधि के दौरान, अनुरोध करने वाले व्यक्ति की ओर से भेजी गई अगली कार्रवाई को मान्य माना जाएगा.
समयसीमा के साथ अनुरोध की गई कार्रवाई मिलने के बाद, टारगेट को स्टेटस रिस्पॉन्स ऐक्शन के साथ, समयसीमा के साथ अनुरोध की गई कार्रवाई की पुष्टि करनी होगी. जब शुरू करने वाले को स्टेटस रिस्पॉन्स ऐक्शन मिलता है और उसमें कोई गड़बड़ी नहीं होती है, तो वह Invoke Request ऐक्शन भेजता है.
कार्रवाई के अनुरोध को शुरू करना
यह अनुरोध की गई कार्रवाई शुरू करें के जैसा ही है.
जवाब देने के लिए कार्रवाई शुरू करना
यह जवाब देने की सुविधा चालू करें के बारे में पहले बताई गई जानकारी के जैसा ही है.
प्रॉम्प्ट शुरू करने के लिए समय से जुड़ी पाबंदियां
सभी 'शुरू करें' निर्देश, टाइम के हिसाब से इंटरैक्शन पर कॉल किए जा सकते हैं. टाइम किया गया अनुरोध ऐक्शन, अनुरोध शुरू करने का ऐक्शन, और अनुरोध का जवाब देने का ऐक्शन, Unicast-ओनली होते हैं. इसलिए, इनका इस्तेमाल टाइम किए गए अनुरोध शुरू करने के ट्रांज़ैक्शन पर ग्रुपकास्ट के तौर पर नहीं किया जा सकता.
'अनुरोध शुरू करें' कार्रवाई में, ग्रुप के साथ-साथ वाइल्डकार्ड वाले पाथ का इस्तेमाल किया जा सकता है. हालांकि, 'जवाब शुरू करें' कार्रवाई में वाइल्डकार्ड का इस्तेमाल नहीं किया जा सकता.