2015-10-18 5 views
9

मैं लेनदेन प्रबंधकों जो कई संसाधनों संघीय रूप से प्रबंधित कर सकते हैं देखते हुए jms और डेटाबेसJtaTransactionManager और ChainedTransactionManager के बीच अंतर?

की तरह अपने आवेदन में एक से अधिक संसाधनों का प्रबंधन करने की जरूरत है मैं 2 लेन-देन प्रबंधकों में आए JtaTransactionManager और ChainedTransactionManager जो लगभग दावों वे कई संसाधनों का प्रबंधन कर सकते हैं।

क्या कोई बता सकता है कि उनमें क्या बड़ा अंतर है? और मुझे किस का उपयोग करना चाहिए?

उत्तर

3

प्रलेखन के रूप में कहते हैं: ChainedTransactionManger doc:

PlatformTransactionManager कार्यान्वयन है कि लेनदेन निर्माण orchestrates, करता है और प्रतिनिधियों की एक सूची के लिए पुनरावर्तन। इस कार्यान्वयन का उपयोग करना मानता है कि लेन-देन रोलबैक होने वाली त्रुटियां आम तौर पर लेनदेन पूर्ण होने से पहले या सबसे आंतरिक प्लेटफार्म ट्रांज़ेक्शन प्रबंधक के प्रतिबद्ध होने के दौरान होती हैं। कॉन्फ़िगर किए गए उदाहरण दिए गए क्रम में लेनदेन शुरू करेंगे और रिवर्स ऑर्डर में प्रतिबद्ध/रोलबैक करेंगे, जिसका अर्थ है कि प्लेटफ़ॉर्म ट्रांज़ेक्शन मैनेजर लेनदेन को तोड़ने की सबसे अधिक संभावना कॉन्फ़िगर की गई सूची में अंतिम होनी चाहिए। एक प्लेटफार्म ट्रांज़ेक्शन मैनेजर प्रतिबद्धता के दौरान अपवाद फेंकने से स्वचालित रूप से शेष लेनदेन प्रबंधकों को काम करने की बजाय वापस रोल करने का कारण बन जाएगा।

इसका मतलब है कि आप कई लेनदेन प्रबंधक को पास करके एक चेनट्रांस लेन-देन प्रबंधक बना सकते हैं। एक अपवाद एक लेन-देन चरनी को हो जाएगा, तो एक रोलबैक उलटा क्रम में वे

JtaTransactionManager doc निर्दिष्ट कर रहे हैं के सभी लेन-देन प्रबंधकों के लिए उत्पन्न हो जाएगा: JTA के लिए

PlatformTransactionManager कार्यान्वयन, एक बैकएंड JTA प्रदाता को सौंपने। इसका उपयोग आम तौर पर जावा ईई सर्वर के लेनदेन समन्वयक को सौंपने के लिए किया जाता है, लेकिन इसे स्थानीय जेटीए प्रदाता के साथ भी कॉन्फ़िगर किया जा सकता है जो एप्लिकेशन के भीतर एम्बेडेड है। यह लेनदेन प्रबंधक वितरित लेनदेन को संभालने के लिए उपयुक्त है, यानी लेन-देन जो कई संसाधनों का विस्तार करता है, और सामान्य रूप से एप्लिकेशन सर्वर संसाधनों (जैसे जेडीबीसी डेटा स्रोत जेएनडीआई में उपलब्ध) पर लेनदेन को नियंत्रित करने के लिए। एक जेडीबीसी डाटासोर्स के लिए, डेटासोर्सट्रांसक्शन प्रबंधक पूरी तरह से पर्याप्त है, और हाइबरनेट (लेनदेन कैश समेत) के साथ एक संसाधन तक पहुंचने के लिए, उदाहरण के लिए, हाइबरनेट ट्रान्सएक्शन मैनेजर उपयुक्त है।

आप कई संसाधनों

के लिए वितरित लेन-देन के प्रबंधन के लिए इस सौदे प्रबंधक का उपयोग कर सकते हैं
संबंधित मुद्दे