2011-08-10 14 views
6

निरस्त किया गया है मैं समझने के लिए सर्वर प्रतिकृति परिदृश्य के लिए निम्न लोटस-Domino सर्वर में होता है चाहते हैं सर्वर प्रतिकृति के लिए सर्वर के दौरान क्या होता है:अगर पाठक पहुँच

  • सर्वर एक एक डेटाबेस की एक प्रतिकृति है।
  • सर्वर बी में एक ही डेटाबेस की प्रतिकृति है।
  • दोनों सर्वरों को हटाएं दस्तावेज़ विशेषाधिकार सहित डेटाबेस पर प्रबंधक पहुंच है।
  • प्रतिकृति प्रक्रिया ने केवल ए और बी को दोहराया है और सभी सिंक में हैं।
  • डेटाबेस में एक नोट है जिसमें एक पाठक फ़ील्ड है जहां दोनों सर्वरों का उल्लेख किया गया है।
  • सर्वर पर सर्वर बी के लिए प्रविष्टि पाठकों के क्षेत्र से हटा दी गई है।
  • सर्वर A, B

साथ प्रतिकृति आरंभ करता है इस परिदृश्य में मैं उम्मीद करते हैं कि सर्वर एक सर्वर बी परिदृश्य में बदलाव, बी के साथ सर्वर सी प्रतिलिपिकारक रहे हैं से दस्तावेज़ निकाल देंगे, बी प्रतिकृति की शुरुआत ए

मेरे पास एक ऐसा एप्लिकेशन है जो इस उम्मीद के आसपास बनता है, और यह ज्यादातर समय से अच्छी तरह से काम करता है। लेकिन ऐसे नोट हैं जो सर्वर बी पर रहते हैं और प्रतिकृति प्रक्रिया से बाहर रखा जाता है। ओआईडी अलग रहता है। ऐसे कई उदाहरण हैं जहां प्रतिकृति प्रक्रिया में किसी भी परिणाम के बिना डीएसएन दोनों नोट्स पर अपडेट किया गया है।

+0

ग्रेट प्रश्न के तहत ट्रैक किया जा रहा है। आप इसे सर्वरफॉल्ट पर भी पोस्ट करना चाहेंगे। –

+0

इस प्रक्रिया को "बस काम करना चाहिए"। लेकिन ऊपर वर्णित सीधा परिदृश्य में भी मैं नोट्स को प्रतिलिपि नहीं देखता हूं। सी-एपीआई के साथ मैंने इन नोट्स को खोजने के लिए एक एप्लीकेशन बनाया है। अवधारणा बहुत बढ़िया है, मैं पाठकों के क्षेत्रों के आधार पर विभिन्न साइटों पर डेटा के सबसेट वितरित करने के लिए इसका उपयोग करता हूं। –

+1

एसीएल रोल या एसीएल समूह आधारित चुनिंदा प्रतिकृति का उपयोग करने के लिए बहुत बेहतर है। प्रतिकृति प्रक्रिया बहुत शुरुआत से नोट्स में रही है और यदि सही तरीके से उपयोग की जाती है तो अविश्वसनीय रूप से शक्तिशाली है लेकिन आपको सुरक्षा मॉडल को समझने की आवश्यकता है जो कि किसी और चीज के विपरीत है जो मैंने कभी भी पार किया है। – AndrewB

उत्तर

1

आईबीएम इस के लिए एक SPR पैदा कर दी है:

समस्या आम तौर पर, जब एक सर्वर एक दस्तावेज़, बाद निर्धारित प्रतिकृति लेता जगह से रीडर क्षेत्र से निकाल दिया जाता, दस्तावेज़ सर्वर से के बाद से हटा दिया गया है उस सर्वर के पास अब दस्तावेज़ तक पहुंच नहीं है। कुछ मामलों में, जब प्राथमिक सर्वर पर रहने वाले दस्तावेज़ के पाठक फ़ील्ड को दो सर्वरों के बीच प्रतिकृति के बाद होता है, तो दस्तावेज अपेक्षाकृत द्वितीयक सर्वर से हटाया नहीं जाता है। प्रतिकृति डीबग सक्षम करने से स्रोत सर्वर पर निम्न त्रुटि प्रकट होती है: "आप उस ऑपरेशन को करने के लिए अधिकृत नहीं हैं"। प्रतिकृति इतिहास को साफ़ करना और दोनों सर्वरों से प्रतिकृति शुरू करना समस्या का समाधान नहीं करता है। आगे की जांच के बाद, यह निर्धारित किया गया था कि द्वितीयक सर्वर पर दस्तावेज़ में उच्च अनुक्रम संख्या थी जो का तात्पर्य है कि इसे प्राथमिक सर्वर पर दस्तावेज़ से हाल ही में अपडेट किया गया था। आम तौर पर, जब किसी दस्तावेज़ में पाठक फ़ील्ड नहीं होता है या यदि प्रतिकृति में शामिल दोनों सर्वर दस्तावेज़ की दोनों प्रतियों के रीडर फ़ील्ड में सूचीबद्ध हैं, तो एक प्रतिकृति विवाद उत्पन्न होगा जब दस्तावेज़ दोनों सर्वरों पर पहले संशोधित किया जाएगा प्रतिकृति होती है। हालांकि, इस विशेष स्थिति में, के बाद से द्वितीयक सर्वर को प्राथमिक सर्वर पर दस्तावेज़ तक पहुंच नहीं है, प्रतिकृति अपेक्षा की जाती है और प्रतिकृति संघर्ष उत्पन्न नहीं होता है क्योंकि पर एक विवाद दस्तावेज़ के लिए उत्पन्न होने के कारण, दोनों सर्वरों को दस्तावेज़ तक पहुंच की आवश्यकता है।

समस्या को हल करना 1.) एक अल्पकालिक समाधान प्राथमिक सर्वर पर दस्तावेज़ को संशोधित करना होगा ताकि उसका अनुक्रम संख्या द्वितीयक सर्वर पर दस्तावेज़ से अधिक हो। प्रतिकृति के बाद, परिवर्तन को माध्यमिक सर्वर पर दोहराना चाहिए और दस्तावेज अपेक्षाकृत द्वितीयक सर्वर से हटा दिया जाना चाहिए। 2.) एक और स्थायी समाधान उपयोगकर्ताओं और सर्वरों को दोनों सर्वरों पर दस्तावेज़ में समय पर दस्तावेज़ में परिवर्तन करने से रोकने के लिए होगा। साथ ही, सर्वर पर किए गए परिवर्तनों के कारण संभवतः परिवर्तनों से पहले दोहराने के बाद ऐसी स्थिति होने से होने वाली ऐसी स्थिति को कम करने में मदद करनी चाहिए। इस मुद्दे के मुद्दे को एसपीआर एमकेएचएस 8MLQVD

0

हमारे पास ऐसा कुछ था जब हम सर्वर को समेकित कर रहे थे और यह हमारे लिए बहुत अच्छा काम नहीं कर पाया। यदि मैं आपके सर्वर ए/सर्वर बी परिदृश्य का उपयोग करता हूं तो हमारे लिए क्या हुआ सर्वर बी के साथ सर्वर बी दोहराया गया था और दस्तावेज़ सर्वर बी से गायब हो गया था। दुर्भाग्यवश इसे हटाए जाने के रूप में ट्रैक किया गया था, इसलिए जब ए और बी दोबारा दोहराए गए तो दस्तावेज़ों को सर्वर से हटा दिया गया था ए

सौभाग्य से हमारे पास बैकअप थे।

+0

प्रतिकृति को नली परिणाम (स्टब) में नली परिणाम देना चाहिए। क्या आपके पास कोई विचार है कि इसे हटाने के रूप में क्यों ट्रैक किया गया था? एकमात्र विलोपन मैं अपेक्षा करता हूं कि एक विलय स्टब छोड़ने के बिना एक शुद्ध है। –

+0

यह संभव है कि प्रतिकृति विवादों के कारण दस्तावेज़ गायब हो गया। यदि आप मुख्य दस्तावेज़ को हटाते हैं तो आप स्वचालित रूप से संघर्ष दस्तावेज़ नहीं देख पाएंगे, अगर आप एक सर्वर पर एक दस्तावेज़ देख सकते हैं लेकिन इसे किसी अन्य पर नहीं देख पा रहे हैं तो प्रतिकृति विवादों की तलाश करें, इसे एक विशेष दृश्य की आवश्यकता है लेकिन उन्हें हल करना आसान है और हालांकि परेशान करने से उन्होंने कई अवसरों पर अपने बेकन को बचाया है क्योंकि वे स्वचालित रूप से संभावित मूल्यवान डेटा के नुकसान को रोकने के लिए बनाए जाते हैं। – AndrewB

2

यह एक आसान जाल है जिसमें आपको गिरने के लिए एक आसान जाल है, आपको सर्वर के बीच प्रतिकृति को नियंत्रित करने के लिए रीडर फ़ील्ड्स का उपयोग नहीं करना चाहिए, वे उपयोगकर्ताओं और समूहों को नियंत्रित करने के लिए शानदार हैं लेकिन प्रतिकृति समूह में सभी सर्वरों को हमेशा सबकुछ तक पहुंच होना चाहिए।

सर्वर बी पर दस्तावेज़ छोड़े/अपडेट नहीं किए जाने का कारण यह है कि दस्तावेज़ बी पर पाठक फ़ील्ड से सर्वर बी को हटाने से यह सर्वर के लिए अदृश्य हो जाता है इसलिए इसे पता नहीं है कि यह बदल गया है, या हटा दिया गया है। सर्वर बी द्वारा सर्वर ए पर हटाए जाने का कारण यह है कि विलोपन दस्तावेज़ को एक विलोपन स्टब में परिवर्तित करता है जो यूएनआईडी से थोड़ा अधिक है, इसलिए पाठक क्षेत्र सर्वर बी को हटाने के लिए 'दृश्यमान' भी बनाते हैं। आप नहीं कर सकते यहां तक ​​कि सर्वर ए को सर्वर बी पर लिखने के लिए मजबूर करें क्योंकि सर्वर ए को पता चलेगा कि सर्वर बी को दस्तावेज़ देखने की अनुमति नहीं है, इसलिए पुश प्रतिकृति दस्तावेज़ में प्रश्न को अनदेखा कर देगी।

+0

स्थानीय प्रतिकृति के बारे में क्या? यदि सर्वर बी एक सर्वर की बजाय कमल क्लाइंट है जो स्थानीय प्रतिकृति को प्रतिलिपि बनाता है, तो क्या यह ठीक काम करना चाहिए? क्या आपके पास कोई दस्तावेज है जो सर्वरों के बीच प्रतिकृति को नियंत्रित करने के लिए पाठकों के खेतों का उपयोग क्यों नहीं किया जाना चाहिए? –

+0

समूह नाम या एसीएल भूमिका वाले पाठक फ़ील्ड कमल नोट्स क्लाइंट को दोहराए जाने वाले नियंत्रण को नियंत्रित करने का एक शानदार तरीका है, प्रक्रिया समान है, हालांकि प्रतिकृति कार्य के तरीके के संदर्भ में प्रक्रिया समान है। मेरे पास दस्तावेज नहीं है, केवल दस साल का अनुभव है। यदि आप उपग्रह सर्वर पर दस्तावेज़ों का सबसेट रखना चाहते हैं तो चुनिंदा प्रतिकृति का उपयोग करें, इसके पारदर्शी और दोनों दस्तावेज़ों के लिए बहुत आसान और डेटा हानि के जोखिम के बिना बदलें। – AndrewB

2

असल में, मैं एंड्रयूबी के जवाब से असहमत हूं। मेरे अनुभव में, यह आपकी अपेक्षाओं के अनुसार काम करना चाहिए। प्रतिकृति को नियंत्रित करने के लिए रीडर्नमेम्स फ़ील्ड्स का उपयोग करना मेरे मानक शस्त्रागार का हिस्सा 15+ सालों से रहा है, और मुझे इसे चुनिंदा प्रतिकृति के विकल्प से कहीं अधिक विश्वसनीय पाया गया है - जो बुरा है और हर कीमत से बचा जाना चाहिए, लेकिन यह एक और कहानी है!

यह सच है कि एक बार पाठक क्षेत्र में सर्वरबी के लिए प्रविष्टि नहीं होती है, नोट स्वयं सर्वर बी के लिए अदृश्य है, लेकिन तथ्य यह है कि नोट बदल गया है प्रतिकृति के लिए अदृश्य नहीं है। प्रतिलिपिकर्ता को यह ध्यान देना चाहिए, यह निर्धारित करें कि सर्वरबी के पास दस्तावेज़ के अधिकार नहीं हैं, और इसे हटाएं - बिना स्टब छोड़े।

क्या आपने दोनों पक्षों पर प्रतिकृति इतिहास को साफ़ करने का प्रयास किया है?

+0

हां, मैंने दोनों तरफ प्रतिकृति इतिहास को साफ़ करने की कोशिश की। –