windows - Aspnet_state सेवा का उपयोग कर भ्रष्ट सत्र



session terminal (1)

मैं हाल ही में यह लड़ रहा था !, और आपके पास इसी तरह की समस्या थी जो वापस लिखे गए डेटा का लगभग 95% सही था। मैंने कई कारणों पर देखा, मुख्य दोषी ने नेटवर्क पर कुछ उपयोगकर्ताओं ने क्रोम को डाउनलोड किया था और क्रोम में रिकार्ड खोलकर सत्र सत्र को तोड़ दिया क्योंकि क्रोम सत्रों की उपेक्षा करता है

अन्य कारण या तो उपयोगकर्ता ब्राउज़र को बंद नहीं कर रहे थे या बिना किसी उपयोगकर्ता या पूरी तरह से अलग उपयोगकर्ता को सत्र आईडी को चुनने और उपयोग करने के लिए आवेदन को बंद नहीं कर रहे थे।

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

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

हम कुछ समय के लिए हमारे एसक्यूएल डेटाबेस में सहेजे जा रहे डेटा के साथ समस्याओं का सामना कर रहे हैं।

कभी-कभी रिकॉर्ड डेटा के साथ सहेजे जाते हैं जो शेष पंक्ति से मेल नहीं खाती, इसे किसी बिंदु पर दिखता है, डाटा को डेटाबेस के पास करने से पहले कुछ और, शायद, किसी अन्य उपयोगकर्ता के डेटा के लिए 'स्वैप' किया जा रहा है।

हम पढ़ने के अलगाव स्तर के साथ TransactionScopes का उपयोग करते हैं जो कि मुझे लगता है कि डेटा अखंडता समस्या डेटाबेस स्तर पर बजाय आवेदन के भीतर है।

हम बड़े पैमाने पर सत्र का उपयोग करते हैं और हम यह सोचने लगे हैं कि भ्रष्ट डेटा का समय उस दिन के समान होता है, जब हम दिन के दौरान सिस्टम में अपडेट तैनात करते हैं।

सत्र को पुनरारंभ होने पर सत्र को जारी रखने के लिए हम aspnet_state सेवा का उपयोग करते हैं।

हमारे उपयोगकर्ता टर्मिनल सत्रों पर भरोसा करते हैं, इसलिए कई उपयोगकर्ता सभी एक ही सर्वर में प्रवेश करते हैं और एक ब्राउज़र के माध्यम से सिस्टम लॉन्च करते हैं।

हमारे पास पहले से ही एक ही डोमेन क्रेडेंशियल के साथ प्रवेश करने वाले उपयोगकर्ताओं पर गौर किया गया है लेकिन अब हम अपेक्षाकृत भरोसेमंद हैं कि उपयोगकर्ता अब अद्वितीय खातों के साथ लॉग इन करते हैं।

डेटा का 99.9% सही है, लेकिन हम यह समझने के लिए संघर्ष कर रहे हैं कि इस आंतरायिक डेटा अखंडता समस्या क्या हो सकती है।

अब हम अपने तैनाती को मौत की पीठ पर काम के घंटे में सीमित कर रहे हैं, लेकिन यह हमेशा संभव नहीं है।

क्या कोई भी इस पर प्रकाश डाल सकता है कि ऐसा क्यों हो सकता है?

संपादित करें : हमने अब इसे डीएएल परत पर अलग किया है, देखें कि SQL क्वेरी बहु उपयोगकर्ता परिवेश में गलत मान देता है





iis-7