লেনদেন আহ্বান করুন

টার্গেট নোডে এক বা একাধিক ক্লাস্টার কমান্ড আহ্বান করার জন্য ইনভোক ট্রানজ্যাকশন ব্যবহার করা হয়। এটি ক্লাস্টারে সংজ্ঞায়িত কোনো কমান্ডে করা রিমোট প্রসিডিউর কলের অনুরূপ।

রাইট ট্রানজ্যাকশনস-এর মতোই, ইনভোক ট্রানজ্যাকশনস টাইমড এবং আনটাইমড ট্রানজ্যাকশনস সমর্থন করে। টাইমড ট্রানজ্যাকশনস সম্পর্কে আরও তথ্যের জন্য অনুগ্রহ করে টাইমড এবং আনটাইমড অ্যাকশনস বিভাগটি দেখুন।

অনির্দিষ্টকালের লেনদেন আহ্বান

একটি অনির্দিষ্ট ইনভোক ট্রানজ্যাকশনের ক্রিয়াকলাপের ক্রম
চিত্র ১: সময়সীমাবিহীন লেনদেন আহ্বান

অনুরোধের ক্রিয়া শুরু করুন

দিক: প্রবর্তক -> লক্ষ্য

রিড রিকোয়েস্ট অ্যাকশন এবং রাইট রিকোয়েস্ট অ্যাকশনের মতোই, এই অ্যাকশনেও ইনিশিয়েটর টার্গেটকে নিম্নলিখিত তথ্য প্রদান করে:

  • আহ্বান অনুরোধ : ক্লাস্টার কমান্ডগুলোর পাথের একটি তালিকা, সেইসাথে কমান্ডগুলোর ঐচ্ছিক আর্গুমেন্ট, যেগুলোকে কমান্ড ফিল্ড বলা হয়।
  • টাইমড রিকোয়েস্ট: একটি ফ্ল্যাগ যা নির্দেশ করে যে এই অ্যাকশনটি একটি টাইমড ইনভোক ট্রানজ্যাকশনের অংশ কিনা।
  • প্রতিক্রিয়া দমন করুন: একটি ফ্ল্যাগ যা নির্দেশ করে যে 'প্রতিক্রিয়া আহ্বান করুন' অ্যাকশনটি দমন করা হবে কিনা।
  • ইন্টারঅ্যাকশন আইডি : একটি পূর্ণসংখ্যা যা ইনভোক রিকোয়েস্ট অ্যাকশন-এর সাথে ইনভোক রেসপন্স অ্যাকশন মেলানোর জন্য ব্যবহৃত হয়।

প্রতিক্রিয়া কর্ম আহ্বান করুন

দিক: লক্ষ্য -> প্রবর্তক

টার্গেটটি Invoke Request Action গ্রহণ করার পর, এটি একটি Invoke Response Action-এর মাধ্যমে লেনদেনটি চূড়ান্ত করবে, যা নিম্নলিখিত বিষয়গুলো বহন করে:

  • ইনভোক রেসপন্স : পাঠানো প্রতিটি ইনভোক রিকোয়েস্টের জন্য কমান্ডের প্রতিক্রিয়া বা স্ট্যাটাসের একটি তালিকা।
  • ইন্টারঅ্যাকশন আইডি: একটি পূর্ণসংখ্যা যা ইনভোক রেসপন্স অ্যাকশনকে ইনভোক রিকোয়েস্ট অ্যাকশনের সাথে মেলানোর জন্য ব্যবহৃত হয়।

সময়সীমাবিহীন আহ্বানের সীমাবদ্ধতা

ইনভোক রিকোয়েস্ট অ্যাকশনটি একটি গ্রুপকাস্ট হতে পারে, কিন্তু সেক্ষেত্রে সাপ্রেস রেসপন্স ফ্ল্যাগটি অবশ্যই সেট করতে হবে। এর কারণ হলো, অন্যথায় একটি গ্রুপের প্রতিটি সদস্যের কাছ থেকে একযোগে আসা প্রতিক্রিয়ায় নেটওয়ার্কটি প্লাবিত হয়ে যেতে পারে।

এই আচরণটি সক্রিয় করতে, 'Invoke Requests' তালিকায় ব্যবহৃত 'Path'-এ 'Groups' থাকতে পারে এবং বিকল্পভাবে 'Endpoint' ফিল্ডে 'wildcards' থাকতে পারে। অধিকন্তু, যদি 'Action'টি 'groupcast' হয়, তবে এই ট্রানজ্যাকশনটি কোনো প্রতিক্রিয়া ছাড়াই সমাপ্ত হয়।

সময়মতো লেনদেন আহ্বান

টাইমড রাইট ট্রানজ্যাকশনের মতোই, টাইমড ইনভোক ট্রানজ্যাকশনও টাইমড রিকোয়েস্ট অ্যাকশন দিয়ে শুরু হয়।

একটি টাইমড ইনভোক ট্রানজ্যাকশনের অপারেশনগুলির ক্রম
চিত্র ২: সময়ভিত্তিক লেনদেন আহ্বান

সময়মতো অনুরোধের পদক্ষেপ

দিক: প্রবর্তক -> লক্ষ্য

একজন প্রবর্তক এই অ্যাকশনটি পাঠিয়ে লেনদেনটি শুরু করেন, যাতে নিম্নলিখিত বিষয়গুলো অন্তর্ভুক্ত থাকে:

  • টাইমআউট : এই ট্রানজ্যাকশনটি কত মিলিসেকেন্ড পর্যন্ত খোলা থাকতে পারে। এই সময়ের মধ্যে ইনিশিয়েটরের পাঠানো পরবর্তী অ্যাকশনটি বৈধ বলে বিবেচিত হবে।

একবার টাইমড রিকোয়েস্ট অ্যাকশনটি গৃহীত হলে, টার্গেটকে অবশ্যই একটি স্ট্যাটাস রেসপন্স অ্যাকশনের মাধ্যমে টাইমড রিকোয়েস্ট অ্যাকশনটি স্বীকার করতে হবে। ইনিশিয়েটর যখন কোনো ত্রুটি নেই এমন একটি স্ট্যাটাস রেসপন্স অ্যাকশন পাবে, তখন সে একটি ইনভোক রিকোয়েস্ট অ্যাকশন পাঠাবে।

অনুরোধের ক্রিয়া শুরু করুন

পূর্বে বর্ণিত ইনভোক রিকোয়েস্ট অ্যাকশন-এর মতোই।

প্রতিক্রিয়া কর্ম আহ্বান করুন

পূর্বে বর্ণিত Invoke Response Action-এর মতোই।

সময়ভিত্তিক আহ্বানের সীমাবদ্ধতা

সমস্ত ইনভোক কমান্ড একটি টাইমড ইন্টারঅ্যাকশনে কল করা যেতে পারে। টাইমড রিকোয়েস্ট অ্যাকশন, ইনভোক রিকোয়েস্ট অ্যাকশন এবং ইনভোক রেসপন্স অ্যাকশন শুধুমাত্র Unicast -ভিত্তিক, এবং এই কারণে এগুলো টাইমড ইনভোক ট্রানজ্যাকশনে গ্রুপকাস্ট হিসেবে ব্যবহার করা যায় না।

Invoke Request Action-টি গ্রুপের সাথে পাথ এবং ওয়াইল্ডকার্ডের ব্যবহার সমর্থন করে, কিন্তু Invoke Response Action-টি ওয়াইল্ডকার্ডের ব্যবহার সমর্থন করে না।