IIS: आइडियल टाइमआउट बनाम रीसायकल


97

IIS में दो क्षेत्र हैं (अच्छी तरह से, दो से अधिक) जहां रीसाइक्लिंग हो सकता है:

  1. "प्रक्रिया मॉडल" अनुभाग के तहत → "आइडल टाइमआउट" (डिफ़ॉल्ट 20 मिनट)

तथा

  1. "रीसायकल" अनुभाग के तहत → "नियमित समय अंतराल" (डिफ़ॉल्ट 1740 मिनट)

मेरे प्रश्न हैं:

  1. दो तरीकों के बीच अंतर क्या हैं?
  2. उन्हें 0 करने के लिए सेटिंग्स के नकारात्मक प्रभाव क्या हैं?

जवाबों:


97

आइडल टाइमआउट है अगर आपके वेब ऐप से कोई कार्रवाई नहीं की गई है, तो यह प्रक्रिया ड्रॉप हो जाएगी और मेमोरी से सबकुछ छोड़ देगी

रीसायकल मेमोरी पर एक मजबूर कार्रवाई है, जहां आपका प्रोसेस बंद है और फिर से शुरू हो रहा है, मेमोरी लीकिंग उद्देश्यों और सिस्टम स्वास्थ्य के लिए

दोनों का नकारात्मक प्रभाव आमतौर पर आपके सत्र और एप्लिकेशन स्थिति का उपयोग होता है यदि आप रीसायकल के साथ गड़बड़ करते हैं तो तेजी से समय समाप्त हो जाता है। (उपयोगकर्ताओं आदि में लॉग इन किया जाएगा) लॉग आउट किया जाएगा, यदि वे "चेक आउट" के बारे में सभी होते। खो दिया है "यही कारण है कि रीसायकल इतने बड़े समय के मूल्य पर है, निष्क्रिय समय समाप्त होने से कोई फर्क नहीं पड़ता क्योंकि कोई भी किसी भी तरह से लॉग इन नहीं करता है और 20 मिनट में कोई कार्रवाई नहीं करता है जो अभी भी" खरीदारी "नहीं कर रहे हैं"

सकारात्मक निष्क्रिय समय से छुटकारा मिल जाएगा क्योंकि आपकी वेबसाइट अपनी "पहली" प्रतिक्रिया पर तेजी से प्रतिक्रिया देगी यदि इसकी अत्यधिक सक्रिय साइट नहीं है जहां एक उपयोगकर्ता को हर 20 मिनट में 1 उपयोगकर्ता होने पर इसे लोड करने के लिए इंतजार करना होगा। कहते हैं। इसलिए एक वेबसाइट जो 20 मिनट में अपना कम समय प्राप्त करती है, वास्तव में आप इस मूल्य को बढ़ाना चाहेंगे क्योंकि वेबसाइट को प्रत्येक उपयोगकर्ता के लिए फिर से स्क्रैच से लोड करना होगा। लेकिन अगर आप इसे लंबे समय तक 0 पर सेट करते हैं, तो कोड की कोई भी मेमोरी एक निश्चित समय में पूरी तरह से सर्वर पर ले जा सकती है।


धन्यवाद! यह समझ आता है। मेरी मुख्य दुविधा यह है कि "पहला भार" बहुत लंबा हो रहा है। मैंने सोचा कि अगर मैं इन दोनों को 0 पर सेट करता हूं तो मैं इसे दरकिनार कर सकता हूं। हालांकि, मेमोरी लीक का मुद्दा एक समस्या है। क्या "रीसायकल" करने का एक तरीका है, लेकिन फिर एक "बल" का अनुरोध करें ताकि "पहली बार पहुंच" खत्म हो जाए और रीसायकल के तुरंत बाद किया जाए? या हो सकता है 2:00 पर रीसायकल शेड्यूल करें, और फिर 2:30 बजे "फर्स्ट टाइम एक्सेस" शेड्यूल करें? क्या ऐसा करने के लिए IIS में एक तरीका है?
रिकी

@ रेकी मुझे पहली हिट-एज-एज प्रॉब्लम भी हो रही थी। आपको अपना एप्लिकेशन पूल शुरू करने की आवश्यकता है। हमेशा के लिए शुरुआत करें: msdn.microsoft.com/en-us/library/ee677285%28v=azure.10%29.aspx
स्टीव हिबर्ट

यह मेरे लिए भी उपयोगी था: simple-talk.com/blogs/2013/03/05/…
स्टीव हिबर्ट

3
@Silvermind - यदि सत्र प्रक्रिया में संग्रहीत है तो इसे रीसायकल पर कॉपी नहीं किया जाएगा। देखें यहाँ
बॉर्नटूकोड

31

से यहाँ :

सिस्टम संसाधनों के संरक्षण का एक तरीका है कि किसी एप्लिकेशन पूल में वर्कर प्रक्रियाओं के लिए निष्क्रिय समय-आउट सेटिंग्स को कॉन्फ़िगर किया जाए। जब ये सेटिंग्स कॉन्फ़िगर की जाती हैं, तो एक निर्दिष्ट निष्क्रियता की अवधि के बाद एक कार्यकर्ता प्रक्रिया बंद हो जाएगी। निष्क्रिय टाइम-आउट के लिए डिफ़ॉल्ट मान 20 मिनट है।

यह भी जांचें कि IIS डिफ़ॉल्ट ऐप पूल रीसायकल 1740 मिनट पर सेट क्यों किया जाता है?

यदि आपके सर्वर पर कुछ ही साइटें हैं और आप चाहते हैं कि वे हमेशा तेजी से लोड हों तो इसे शून्य पर सेट करें। अन्यथा, जब आपके पास बिना किसी ट्रैफ़िक के 20 मिनट होंगे तो ऐप पूल समाप्त हो जाएगा ताकि यह अगली यात्रा पर फिर से शुरू हो सके। समस्या यह है कि ऐप पूल में पहली यात्रा के लिए एक नई w3wp.exe कार्यकर्ता प्रक्रिया बनाने की आवश्यकता है जो धीमी है क्योंकि ऐप पूल को बनाने की आवश्यकता है, ASP.NET या किसी अन्य ढांचे को लोड करने की आवश्यकता है, और फिर आपके आवेदन की आवश्यकता है लोड होना। इसमें कुछ सेकंड लग सकते हैं। इसलिए मुझे लगता है कि मेरे पास हर अवसर के लिए 0 सेट है, जब तक कि यह एक सर्वर के लिए नहीं है जो बहुत सारी साइटों को होस्ट करता है जिन्हें हमेशा चलने की आवश्यकता नहीं होती है।


6

अब IIS है

Idle Time-out Action : Suspend स्थापना

निलंबित करना केवल प्रक्रिया को मुक्त करता है और यह प्रक्रिया को नष्ट करने की तुलना में बहुत अधिक कुशल है।


0

मुझे एक डेस्कटॉप ऐप विरासत में मिला है जो IIS पर वेब सेवाओं की एक श्रृंखला के लिए कॉल करता है। वेब सेवाओं (भी) को समयबद्ध प्रक्रियाओं को चलाने में सक्षम होना चाहिए, स्वतंत्र रूप से (क्लाइंट के बिना)। इसलिए उन सभी के पास टाइमर हैं। वेब सेवा टाइमर बंद हो रहे थे (मेमोरी लीक?) तो हम 0 से बाहर आइडल समय निर्धारित करते हैं और टाइमर पर रहते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.