2010-01-08 6 views
7

आप कैसे काम के आसपास तथ्य यह है कि सत्र हर बार जब आप एक ASP.NET वेबसाइट के लिए कुछ कोड फ़ाइलों को तैनात गिरा रहे हैं? कभी-कभी हमें दिन के मध्य में एक महत्वपूर्ण फिक्स को तैनात करने की आवश्यकता होती है लेकिन इसके लिए हमारे सभी उपयोगकर्ताओं को बूट नहीं करना चाहते हैं।एएसपी.नेट तैनाती: कोड अपडेट करते समय सत्र स्थिति खोने से कैसे बचें?

+0

मेरे पास एक सिस्टम डाउनटाइम अधिसूचना संदेश लागू होगा और उपयोगकर्ताओं को गर्म पैच के साथ गड़बड़ से साफ रूप से बाहर निकालना होगा, जो सत्र – curtisk

उत्तर

7

डिफ़ॉल्ट सत्र तक InProc जमा हो जाती है। आपको out-of-process option चुनना चाहिए।

हो सकता है कि सिर्फ एक StateServer अपने परिदृश्य में पर्याप्त है

+4

का उपयोग कर राज्यसेवर का उपयोग समस्या को ठीक करेगा। सावधान रहें कि सत्र सत्र में जो कुछ भी आप रखना चाहते हैं, उसे सत्र सत्र भंडारण में से किसी एक का उपयोग करते समय क्रमिक करने की आवश्यकता होगी। – TonyB

1

एक तरह से एक लोड-संतुलित सर्वर स्थापित करने के लिए किया जाएगा। आप सभी ट्रैफिक को सर्वर ए, पैच सर्वर बी पर निर्देशित कर सकते हैं और फिर दूसरी तरफ दोहरा सकते हैं।

वैकल्पिक रूप से, @ कर्टिस्क राज्यों के रूप में, मंच पर पहुंचने के लिए बेहतर है जहां आपको कठोर परीक्षण के माध्यम से "गर्म पैच" करने की आवश्यकता नहीं है और फिर अग्रिम विज्ञापन योजनाओं के लिए आगे बढ़ें।

उम्मीद है कि इससे मदद मिलती है।

1

कारण है कि ऐसा होता है कि नए कोड की तैनाती अनुप्रयोग पूल पुनर्नवीनीकरण करने के लिए कारण बनता है। फिर आप स्मृति में जो कुछ भी रखते हैं उसे खो देते हैं।

तरीका यह चारों ओर पाने के लिए तो स्मृति में कुछ भी बचाने के लिए नहीं है।

इस कितना कठिन है अपनी वास्तुकला पर निर्भर करता है।

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

संबंधित मुद्दे