2010-11-11 30 views
45

हमारे पास एक सर्वर पर तैनात एएसपीनेट एमवीसी अनुप्रयोग है, और जब सर्वर पर बहुत अधिक अनुरोध है, तो ग्राहक को केवल "503 सेवा अनुपलब्ध" त्रुटि मिलेगी।
लेकिन यदि मैंने एप्लिकेशन को किसी अन्य सर्वर (कम हार्डवेयर कॉन्फ़िगरेशन) पर तैनात किया है, तो सब कुछ ठीक काम करता है, इससे भी अधिक अनुरोध यह अच्छी तरह से संभाल सकता है।
मेरा प्रश्न यह है कि क्या संभव कॉन्फ़िगरेशन पिछले सर्वर को 503 त्रुटि को फेंकने का कारण बन सकता है? (जिसका अर्थ है कि अनुरोध हमारे आवेदन तक नहीं पहुंचे)।"सेवा अनुपलब्ध 503" त्रुटि का कारण क्या हो सकता है?

+2

वास्तव में [कई संभावित कारण] हैं [http://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/iis/55f71614-ef1b-4015-b9c8-a42c1e700c25.mspx?mfr=true)। –

+10

बंद? क्या यह जानना उपयोगी नहीं है कि कुछ या सभी उत्तर क्या हैं? ढेर ओवरफ्लो अजीब है। जानकारी पर सभी प्रकार प्रदान नहीं करना चाहिए, बस एक विशिष्ट प्रकार! ;) –

+1

स्टैक ओवरफ़्लो की ऐसी अजीब गतिविधियां हमारे दृश्य के पीछे है। वैसे भी, यह इस साइट में प्रतिभा प्रोग्रामर के लिए मेरी पसंदीदा साइट है। –

उत्तर

65

आपके वेब पेज एक एप्लिकेशन पूल द्वारा परोसा जाता है। यदि आप एप्लिकेशन पूल को अक्षम/रोकते हैं, और कोई भी एप्लिकेशन ब्राउज़ करने का प्रयास करता है, तो आपको एक सेवा अनुपलब्ध होगी। यह कई कारणों की वजह से हो सकता है ...

  1. आपका आवेदन दुर्घटनाग्रस्त हो गया हो सकता है [घटना दर्शक की जाँच करें और आप अपने आवेदन/सिस्टम लॉग में इवेंट लॉग पाते हैं या नहीं]

  2. आपका आवेदन कर सकते हैं बहुत बार दुर्घटनाग्रस्त हो। यदि एक ऐप पूल 5 मिनट में 5 बार क्रैश हो जाता है [तेजी से असफल होने के लिए अपनी एप्लिकेशन पूल सेटिंग्स जांचें], तो आपका एप्लिकेशन पूल आईआईएस द्वारा अक्षम कर दिया गया है और आप यह संदेश प्राप्त कर लेंगे।

या तो मामले में, मुद्दा यह है कि अपने कार्यकर्ता प्रक्रिया विफल हो रहा है और आप दुर्घटना के नजरिए से यह समस्याओं का निवारण करना चाहिए।

What is a Crash (technically)... in ASP.NET and what to do if it happens?

3

मुख्य रूप से इसका अर्थ यह है कि बहुत सारे समवर्ती अनुरोध हैं और आगे यह है कि वे डिफ़ॉल्ट 1000 कतारबद्ध अनुरोधों से अधिक हैं। आपकी वेबसाइट पर 1000 या अधिक कतारबद्ध अनुरोध हैं।

यह हो सकता है (मान लीजिए कि आपके ऐप में कोई गलती नहीं है) यदि लंबे समय तक चल रहे कार्य हैं और नतीजतन अनुरोध कतार का बैक अप लिया गया है।

इस पर निर्भर करता है कि एप्लिकेशन पूल कैसे स्थापित किया गया है, आप इस तरह की चीज़ देख सकते हैं। आम तौर पर, ऐप पूल के प्रोसेस मॉडल में अधिकतम वर्कर प्रक्रिया नामक एक आइटम होता है। डिफ़ॉल्ट रूप से यह 1 है। यदि आप इसे 1 से अधिक (आमतौर पर हार्डवेयर पर कोर की अधिकतम संख्या तक सेट करते हैं) तो आप ऐसा नहीं देख सकते हैं।

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

+2

क्षमा करें शिव। यह सही नहीं है। http://support.microsoft।कॉम/केबी/9438 9 1 –

+0

क्या सही नहीं है? –

+5

आप जो कह रहे हैं वह सर्वर को बहुत व्यस्त त्रुटि का कारण बन जाएगा। सवाल सेवा अनुपलब्ध है। ये दो मुद्दे पूरी तरह से अलग हैं। मेरा जवाब जांचें। –

2

हमने हाल ही में इस त्रुटि का सामना करना पड़ा, मूल कारण निकला आईआईएस सर्वर पर की तिथि निकल चुकी एसएसएल प्रमाणपत्र हो। लोड बैलेंसर (हमारे वेब स्तरीय के सामने) एसएसएल की समयसीमा समाप्त हो गई, और आईआईएस सर्वरों में से एक पर HTTP यातायात को संभालने की बजाय, यह त्रुटि दिखाना शुरू कर दिया। इसलिए मूल रूप से आईआईएस पूरी तरह से अलग कारण के लिए सर्वर अनुरोधों में असमर्थ है :)

5

यदि सर्वर में पर्याप्त स्मृति नहीं है तो यह समस्या भी उत्पन्न होगी। गोडाडी वीपीएस के साथ यह मेरा व्यक्तिगत अनुभव है।

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