हम लोड के तहत, सत्र डेटा दूषित या गायब हो रहे हैं, लेकिन सत्र स्वयं उपस्थित रहते हैं।लोड के तहत एएसपी.NET सत्र दूषित
हमारी वेबसाइट आईआईएस 7 पर एएसपी.Net 4.0 चला रही है और सिस्को एसीई उपकरण लोड बैलेंसर के पीछे कुल 4 सर्वरों के साथ वेब-फार्म में इनप्रोक सत्र स्थिति का उपयोग कर रही है।
इस समय समस्या यादृच्छिक है, हम इस मुद्दे को इच्छा पर पुन: पेश नहीं कर सकते हैं। यह वेब एप्लिकेशन पिछले सात महीनों से सही तरीके से काम कर रहा है।
हमें एहसास है कि माइक्रोसॉफ्ट वेब खेतों के साथ इनप्रोक का उपयोग करने की सिफारिश नहीं करता है, भले ही चिपचिपा सत्रों का उपयोग किया जा रहा हो।
हमारे पास हमारे उत्पादन वातावरण के लिए उचित प्रयोगशाला वातावरण है, लेकिन पर्याप्त भार (हम डब्ल्यूएपीटी का उपयोग करते हैं) के तहत वहां पुन: उत्पन्न करने में असमर्थ हैं।
हमारे उत्पादन वातावरण में, हमने लोड बैलेंसर के कारण "सर्वर होपिंग" को खत्म करने के लिए लोड बैलेंसर के पीछे केवल एक सर्वर को अलग करने का प्रयास किया है। हालांकि, एक सर्वर पर चलने पर भी समस्या बनी रहती है। हम उत्पादन में किसी भी ऐपपूल या आईआईएस रीसाइक्लिंग को नहीं देख रहे हैं। एक मानक अभ्यास के रूप में, हम उत्पादन एप पूल प्रतिदिन 3am ईएसटी पर रीसायकल करते हैं, और ओएस पर महीनों के अपटाइम का आनंद लिया है।
सत्र में संग्रहीत किया जा रहा है विभिन्न प्रकार की वस्तुओं, सरल प्रकारों (पूर्णांक और तार) से, हमारे पूरे शॉपिंग कार्ट (एक जटिल ऑब्जेक्ट ग्राफ़), और यहां तक कि उपयोगकर्ता नियंत्रण (.ascx) उदाहरण भी हैं। इन वस्तुओं में से कई को आसानी से क्रमबद्ध करने में असमर्थता के कारण, हम उचित अवधि में आउट-ऑफ-प्रोसेस सत्र संग्रहण में स्विच करने में असमर्थ हैं।
किसी ने फिडलर का उपयोग कर एक HTTP सत्र को कैप्चर करने का प्रयास करने का सुझाव दिया। फिडलर चलाने के साथ यह मुद्दा यह है कि हम जानबूझकर इस मुद्दे को खुद को पुन: पेश नहीं कर सकते हैं। इसलिए, यह हमें विफलता घटना के HTTP ट्रेस को कैप्चर करने में असमर्थ बनाता है जैसा कि होता है। हमारी प्रयोगशाला में डब्ल्यूएपीटी से ट्रेस लॉग संभवतः फिडलर के समान डेटा प्रदान करेंगे, लेकिन जैसा कि मैंने कहा था, हम इसे पुन: पेश नहीं कर सकते हैं।
मैं बहुत इसकी सराहना करेंगे किसी भी अंतर्दृष्टि किसी को भी हो सकता है ...
क्या आपके पास कोई सत्र डेटा दूषित होने के बारे में कोई जानकारी है? क्या यह शॉपिंग कार्ट है? क्या यह यादृच्छिक है? आप कैसे जानते हैं कि क्या आप इसे पुन: पेश नहीं कर पा रहे हैं? और, मुझे यकीन है कि आपने इसे पहले सुना है, इसलिए मैं टूटे हुए रिकॉर्ड की तरह लग सकता हूं, आप सत्र में अपने उपयोगकर्ताओं के शॉपिंग कार्ट के पूरे ऑब्जेक्ट ग्राफ़ को स्टोर करने की आवश्यकता के बारे में कुछ करना चाहते हैं और एक के संग्रहण उपयोगकर्ता नियंत्रण उदाहरण भी। – Sumo
हम जानते हैं कि हम इसे पुन: पेश नहीं कर सकते हैं क्योंकि जब ग्राहक होता है तो हमें स्टैक निशान के साथ ईमेल प्राप्त होते हैं, ग्राहक कॉल के साथ संयोग। यह अक्सर यादृच्छिक मूल्य होता है, लेकिन विशेष रूप से एक ड्रॉपिंग प्रतीत होता है, जो एक साझा पाठक संपत्ति से आता है जो इस सत्र चर के लिए पहुंच को लपेटता है। यह काफी यादृच्छिक है, लेकिन निश्चित रूप से लोड के तहत होता है क्योंकि ऐप पूल शुरू होने के बाद कुछ समय बीतने के बाद तक मेरे ग्राहक सेवा लोग शिकायत प्राप्त करना शुरू नहीं करते हैं। हां, हम जानते हैं कि हमें सत्र के बाहर उस अश्लील ऑब्जेक्ट ग्राफ़ और उपयोगकर्ता नियंत्रण को प्राप्त करने की आवश्यकता है, लेकिन यह फ़िक्स कुछ सप्ताह दूर है। :/ –
क्या आप इस साझा चर के बारे में अधिक जानकारी पोस्ट कर सकते हैं? – Sumo