IIS कार्यकर्ता प्रक्रिया हर 29 घंटे और प्रत्येक 24 घंटे में पुनरावृत्ति क्यों नहीं करती है?


24

जब आप IIS पर एक साइट सेटअप करते हैं तो यह प्रत्येक 1740 मिनट (29 घंटे) को रीसायकल करने के लिए कार्यकर्ता प्रक्रिया को डिफॉल्ट करता है। क्यों एक विषम संख्या जैसे 29 घंटे और नहीं, उदाहरण के लिए, 24 या 48 घंटे?

जवाबों:


27

टेक एड 2003 में, प्रस्तुतकर्ता से यह सवाल पूछा गया था, और जवाब यह था कि वे एक अनियमित चक्र चाहते थे ताकि इसे एक दैनिक सीमा पर होने से रोका जा सके (जैसे कि सर्वर / डोमेन पर निर्धारित अन्य दैनिक कार्यों से अंतर करने के लिए)।

यहाँ साइट (लिंक मृत) अनुमान लगाया गया है:

... (२ ९) २४ के बाद पहला अभाज्य है, यह किसी भी अन्य सर्वर प्रक्रिया के साथ एक नियमित पैटर्न में होने वाली कम से कम संभावना है; समस्याओं में जांच को आसान बनाना

एक अन्य साइट इस बात की पुष्टि करती है:

( वेड हिल्मो ) ने सरल कारण के लिए 29 घंटे का सुझाव दिया कि यह 24 पर सबसे छोटी संख्या है। वह एक कंपित और गैर-दोहराव वाला पैटर्न चाहते थे जो प्रति दिन एक से अधिक बार नहीं होता है।


दिलचस्प। व्यक्तिगत रूप से मुझे लगता है कि प्रत्येक दिन एक ही समय में कुछ पुनरावृत्ति होने से यह ट्रैक करना आसान हो जाता है कि क्या कार्यकर्ता प्रक्रिया रीसायकल अन्य मुद्दों का कारण बन रही थी। उदाहरण के लिए किसी समस्या को ट्रैक करना जो लगभग हर दिन होता है, कठिन है, लेकिन यह आसान है अगर यह हर दिन शाम 7 बजे होता है क्योंकि आप उस समय होने वाली घटनाओं के लिए सिस्टम को खोज सकते हैं। मुझे पता है कि जब भी आप चाहें या नहीं, तब भी आप इसे रीसायकल करने के लिए IIS सेट कर सकते हैं, लेकिन अधिकांश इसे इसके डिफ़ॉल्ट पर छोड़ देते हैं। जवाब के लिए धन्यवाद!
गाय

18

ठीक है, यह मुझे परेशान कर रहा था, इसलिए मैंने चारों ओर से खोदा और आखिरकार यह पोस्टिंग एक ऐसे व्यक्ति से मिली, जो जाहिरा तौर पर IIS टीम में था:

IIS6 हर 29 घंटे में डिफ़ॉल्ट रूप से रीसायकल करता है (और हमारे पास एक कारण था

IIS6 हर 29 घंटे को डिफ़ॉल्ट रूप से रीसायकल करता है (और हमारे पास डिफ़ॉल्ट मान के रूप में 29 घंटे चुनने का एक कारण था) क्योंकि इससे अधिक होने की संभावना नहीं है, इस पर चलने वाला वेब एप्लिकेशन अविश्वसनीय है और शाब्दिक रूप से बार-बार पुनरारंभ करने की आवश्यकता है।

इस प्रकार, IIS6 को आधार (सराहनीय निंदक) के आसपास बनाया गया है कि उपयोगकर्ता का वेब एप्लिकेशन 24 से अधिक सन्निहित घंटों तक नहीं चलेगा, इसके अनुसार सुविधाओं की योजना बनाई गई है, और चूक को चुना गया है। कार्यकर्ता प्रक्रियाएं हर 29 घंटे में पुन: चक्रित होती हैं, प्रक्रिया स्टार्टअप और शटडाउन की निगरानी की जाती है, यह सुनिश्चित करने के लिए प्रक्रिया को लगातार पिंग किया जाता है कि यह चल रहा है, जब प्रक्रिया अनपेक्षित रूप से समाप्त हो जाती है, तो इसे ट्रैक किया जाता है और संकेत दिया जाता है, आदि।

यह महसूस करते हुए कि पुनर्चक्रण संचालन का एक सामान्य हिस्सा है, IIS6 भी अंत उपयोगकर्ता से इस तरह के रीसाइक्लिंग को अलग करना सुनिश्चित करता है - कुछ कर्नेल-मोड जादू के कारण अंत उपयोगकर्ता का टीसीपी कनेक्शन कभी भी रीसायकल के दौरान समाप्त नहीं होता है। उपयोगकर्ता-मोड एप्लिकेशन के साथ संयुक्त, जो सत्र-राज्य की आउट-ऑफ-प्रोसेस (ASP.Net सत्र राज्य सेवा की तरह) को संग्रहीत करता है, किसी को उपयोगकर्ता के डेटा हानि के साथ विश्वसनीय अपटाइम की गारंटी दी जाती है, भले ही वेब एप्लिकेशन हर एक प्रसंस्करण के बाद क्रैश हो जाए। उपयोगकर्ता अनुरोध।

यह लगभग उतना ही अच्छा है जितना IIS6 इसे बना सकता है - एक अविश्वसनीय वेब एप्लिकेशन को देखते हुए, इसे एंड-यूज़र के लिए विश्वसनीय बनाता है, और यह अविश्वसनीय वेब एप्लिकेशन के किसी भी सुधार की आवश्यकता के बिना करता है।

बेशक, सभी अविश्वसनीय अनुप्रयोग विश्वसनीय दिखने के लिए नहीं किए जा सकते हैं - यदि हां, तो हम सभी नौकरियों से बाहर हैं! - लेकिन IIS6 यकीन है कि पूरी तरह से एक बहुत अधिक करने की कोशिश करता है।

आपके मामले में, यह सिर्फ ऐसा होता है कि रेजिनाइलसी का गैर-जारी उपयोगकर्ता की स्थिति पर दुष्प्रभाव होता है, लेकिन इसे आसानी से समायोजित किया जा सकता है।

मान लें कि आपके वेब एप्लिकेशन में कभी कोई समस्या नहीं है और इन-प्रोसेस सत्र स्थिति के साथ रहता है, तो आप इन डिफ़ॉल्ट को बदलना चाहेंगे: 1. 29 घंटे की समय-समय पर रीसाइक्लिंग को बंद करें।

इससे सत्र राज्य के अप्रत्याशित नुकसान को रोका जा सकेगा।

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


1
मुझे लगता है कि यह पूछना गूंगा है लेकिन अगर IIS मानता है कि वेब ऐप इसे 24 घंटे तक नहीं बनाता है, तो 29 कैसे अच्छा विकल्प था? क्या उन्हें 24 से नीचे की संख्या नहीं लेनी चाहिए थी? इस व्याख्या की व्याख्या करने में मैं कहाँ गलत हूँ?
अल्फा

शायद डिफ़ॉल्ट मान के लिए कोई "सर्वश्रेष्ठ" उत्तर नहीं है, और वेबसाइट का प्रबंधन करने वाले व्यक्ति को ऐप और सिस्टम के आधार पर एक जानबूझकर निर्णय लेना चाहिए।
DOK

@ अलफा - मैं सहमत हूँ - इसका कोई मतलब नहीं है - यह २२ या २३ घंटे के लिए डिफ़ॉल्ट होना चाहिए या कम से कम २४ से कम होना चाहिए।
लड़का

[उद्धरण वांछित]
piers7

मुझे हर सुबह वेबसाइट के कुछ हिस्सों में एक अजीब संकलन त्रुटि मिल रही है जिसे केवल एक रीसायकल के साथ तय किया जा सकता है। मेरा अनुमान है कि आइडल टाइमआउट कम लोड के कारण रात भर चलता है, और किसी कारण से, जब यह फिर से शुरू होता है, तो संकलन त्रुटि वापस आ जाती है। नेतृत्व के लिए धन्यवाद, मैं अपने मुद्दे को ठीक करने के लिए इस मार्ग का अनुसरण करूंगा ...
सोनजज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.