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