क्या है सागा पैटर्न
इवेंट अनुक्रमों के माध्यम से वितरित लेनदेन
सागा पैटर्न विफलताओं पर क्षतिपूर्ति क्रियाओं के साथ स्थानीय लेनदेन के अनुक्रम के माध्यम से वितरित लेनदेन का प्रबंधन करने का पैटर्न है।
समस्या
- माइक्रोसर्विसेज के अपने डेटाबेस हैं
- क्लासिक ACID लेनदेन असंभव हैं
- सेवाओं के बीच संगति आवश्यक है
सागा प्रकार
- कोरियोग्राफी — सेवाएं इवेंट्स का आदान-प्रदान करती हैं
- ऑर्केस्ट्रेशन — केंद्रीय समन्वयक प्रबंधित करता है
कोरियोग्राफी
- सेवाएं एक-दूसरे के इवेंट्स की सदस्यता लेती हैं
- प्रत्येक सेवा अपना परिणाम प्रकाशित करती है
- कोई एकल विफलता बिंदु नहीं
- स्थिति को ट्रैक करना कठिन
ऑर्केस्ट्रेशन
- सागा समन्वयक प्रवाह का प्रबंधन करता है
- क्रमिक रूप से सेवाओं को कॉल करता है
- ट्रैक और डीबग करना आसान
- एकल विफलता बिंदु का जोखिम
क्षतिपूर्ति लेनदेन
- पहले से पूर्ण चरणों को पूर्ववत करें
- आइडेम्पोटेंट होना चाहिए
- सेमांटिक अनडू (रोलबैक नहीं)
- उदाहरण: रद्द करने के बजाय भुगतान वापसी