I/O टाइम आउट कॉन्फ़िगर करने के लिए सबसे सही तरीके

Apigee Edge का दस्तावेज़ देखा जा रहा है.
Apigee X के दस्तावेज़ पर जाएं.
जानकारी

क्लाइंट ऐप्लिकेशन से किए गए एपीआई अनुरोध, बैकएंड सेवाओं तक पहुंचने से पहले, Apigee Edge के अलग-अलग कॉम्पोनेंट से गुज़रते हैं. ज़्यादातर क्लाइंट ऐप्लिकेशन, इन अनुरोधों के जवाब समय पर मिलने की उम्मीद करते हैं.

समय पर जवाब पाने के लिए, हर उस कॉम्पोनेंट में I/O टाइम आउट की वैल्यू सेट की जाती है जिससे एपीआई के अनुरोध फ़्लो होते हैं. अगर फ़्लो में मौजूद किसी कॉम्पोनेंट को, पहले वाले कॉम्पोनेंट से ज़्यादा समय लगता है, तो पहले वाले कॉम्पोनेंट का टाइम आउट हो जाता है और वह 504 गेटवे टाइम आउट गड़बड़ियों के साथ जवाब देता है.

टाइम आउट कॉन्फ़िगर करते समय, हर कॉम्पोनेंट में वैल्यू को बहुत सावधानी से कॉन्फ़िगर किया जाना चाहिए. ऐसा न करने पर, 504 गेटवे टाइम आउट गड़बड़ियां हो सकती हैं.

इस दस्तावेज़ में, अलग-अलग कॉम्पोनेंट पर I/O टाइम आउट कॉन्फ़िगर करने के सबसे सही तरीकों के बारे में बताया गया है. इन कॉम्पोनेंट के ज़रिए, Apigee Edge में एपीआई अनुरोध फ़्लो करते हैं.

I/O टाइम आउट को कॉन्फ़िगर करने के सबसे सही तरीके

I/O टाइम आउट कॉन्फ़िगर करते समय, इन सबसे सही तरीकों को अपनाएं:

  • पहला कॉम्पोनेंट: एपीआई अनुरोध फ़्लो के पहले कॉम्पोनेंट के लिए, हमेशा सबसे ज़्यादा टाइम आउट का इस्तेमाल करें. यह कॉम्पोनेंट, Apigee Edge में क्लाइंट ऐप्लिकेशन होता है.
  • आखिरी कॉम्पोनेंट: एपीआई अनुरोध फ़्लो के आखिरी कॉम्पोनेंट के लिए, हमेशा सबसे कम टाइम आउट का इस्तेमाल करें. यह कॉम्पोनेंट, Apigee Edge में बैकएंड सेवा होती है.
  • कॉम्पोनेंट के बीच: पक्का करें कि फ़्लो के पहले कॉम्पोनेंट और आखिरी कॉम्पोनेंट के बीच, हर कॉम्पोनेंट में कॉन्फ़िगर की गई टाइम आउट वैल्यू में कम से कम 2-3 सेकंड का अंतर हो.
  • राऊटर: किसी खास वर्चुअल होस्ट के लिए, I/O टाइम आउट वैल्यू को कॉन्फ़िगर (बदलना) करना हमेशा अच्छा होता है. ऐसा करने के लिए, राऊटर पर कॉन्फ़िगर करने के बजाय, वर्चुअल होस्ट पर कॉन्फ़िगर करें. इससे यह पक्का होता है कि टाइम आउट की नई वैल्यू का असर, सिर्फ़ उन एपीआई प्रॉक्सी पर पड़ता है जो किसी खास वर्चुअल होस्ट का इस्तेमाल कर रही हैं. इसका असर, राउटर से सेवा देने वाली सभी एपीआई प्रॉक्सी पर नहीं पड़ता.

    राउटर पर I/O टाइम आउट को सिर्फ़ तब कॉन्फ़िगर (बदलाव करें) करें, जब आपको पूरी तरह से पक्का हो कि राउटर पर चल रही सभी एपीआई प्रॉक्सी के लिए, नई I/O टाइम आउट वैल्यू ज़रूरी है या लागू है.

  • मैसेज प्रोसेसर: किसी खास एपीआई प्रॉक्सी के लिए, I/O टाइम आउट की वैल्यू को मैसेज प्रोसेसर पर कॉन्फ़िगर करने के बजाय, उसे कॉन्फ़िगर (बदलना) करना हमेशा अच्छा होता है. इससे यह पक्का होता है कि टाइम आउट की नई वैल्यू का असर सिर्फ़ उस एपीआई प्रॉक्सी पर पड़ता है, न कि मैसेज प्रोसेसर से भेजी जा रही सभी एपीआई प्रॉक्सी पर.

    मैसेज प्रोसेसर पर I/O टाइम आउट को सिर्फ़ तब कॉन्फ़िगर (बदलें) करें, जब आपको पूरी तरह से पक्का हो कि मैसेज प्रोसेसर पर चल रही सभी एपीआई प्रॉक्सी के लिए, I/O टाइम आउट की नई वैल्यू ज़रूरी है या लागू है.

उदाहरण के तौर पर दी गई स्थितियां

इस सेक्शन में दी गई स्थितियों से, आपको I/O टाइम आउट वैल्यू को सही तरीके से सेट करने का तरीका समझने में मदद मिल सकती है.

पहली स्थिति: सीधे क्लाइंट ऐप्लिकेशन से Apigee Edge को अनुरोध करना

इस सेक्शन में, ऐसे Apigee Edge सेटअप में टाइम आउट वैल्यू सेट अप करते समय अपनाए जाने वाले सबसे सही तरीकों के बारे में बताया गया है जहां क्लाइंट ऐप्लिकेशन और Apigee Edge के बीच और Apigee Edge और आपके बैकएंड सर्वर के बीच कोई इंटरमीडियरी कॉम्पोनेंट नहीं है.

बिना किसी इंटरमीडियरी कॉम्पोनेंट वाले Apigee सेटअप का सैंपल

क्लाइंट से शुरू होकर राउटर और फिर मैसेज प्रोसेसर और फिर बैकएंड सर्वर पर जाने वाला फ़्लो

अगर Apigee Edge को ऊपर दिए गए डायग्राम में दिखाए गए तरीके से सेट अप किया गया है और इसमें कोई इंटरमीडियरी कॉम्पोनेंट नहीं है, तो इन सबसे सही तरीकों का इस्तेमाल करें:

  1. क्लाइंट ऐप्लिकेशन, फ़्लो का पहला कॉम्पोनेंट होता है. सबसे ज़्यादा टाइम आउट की वैल्यू, क्लाइंट पर सेट की जानी चाहिए.
  2. बैकएंड सर्वर, फ़्लो का आखिरी कॉम्पोनेंट होता है. सबसे कम टाइम आउट की वैल्यू, बैकएंड सर्वर पर सेट की जानी चाहिए.
  3. हर कॉम्पोनेंट के लिए, टाइम आउट की वैल्यू को इस क्रम में कॉन्फ़िगर करें:

    क्लाइंट पर टाइम आउट कॉन्फ़िगर करें. इसके बाद, राऊटर, मैसेज प्रोसेसर, और बैकएंड सर्वर पर टाइम आउट कॉन्फ़िगर करें

    नीचे दिए गए उदाहरण में, किसी भी समस्या से बचने के लिए, ऊपर दिए गए दिशा-निर्देशों के मुताबिक, अलग-अलग कॉम्पोनेंट पर सेट की गई टाइम आउट वैल्यू दिखाई गई हैं:

    क्लाइंट पर 60 सेकंड, राऊटर पर 57 सेकंड, मैसेज प्रोसेसर पर 55 सेकंड, और बैकएंड सर्वर पर 52 सेकंड के लिए टाइम आउट कॉन्फ़िगर करें

दूसरी स्थिति: इंटरमीडियरी कॉम्पोनेंट के ज़रिए, क्लाइंट ऐप्लिकेशन से Apigee Edge को किए गए अनुरोध

इस सेक्शन में, Apigee Edge सेटअप में टाइम आउट वैल्यू सेट अप करते समय अपनाए जाने वाले सबसे सही तरीकों के बारे में बताया गया है. ऐसा तब किया जाता है, जब क्लाइंट ऐप्लिकेशन और Apigee Edge के बीच एक या उससे ज़्यादा इंटरमीडियरी कॉम्पोनेंट हों. साथ ही, Apigee Edge और आपके बैकएंड सर्वर के बीच भी एक या उससे ज़्यादा इंटरमीडियरी कॉम्पोनेंट हों.

इंटरमीडियरी कॉम्पोनेंट में लोड बैलेंसर, कॉन्टेंट डिलीवरी नेटवर्क (सीडीएन), NGINX वगैरह शामिल हो सकते हैं.

क्लाइंट और Apigee Edge के बीच और Apigee Edge और बैकएंड सर्वर के बीच एक इंटरमीडियरी कॉम्पोनेंट वाले Apigee सेटअप का सैंपल

क्लाइंट से शुरू होकर इंटरमीडियरी कॉम्पोनेंट 1 पर जाने वाला फ़्लो, फिर राउटर पर जाता है. इसके बाद, मैसेज प्रोसेसर पर जाता है और फिर इंटरमीडियरी कॉम्पोनेंट 2 पर जाता है. आखिर में, यह बैकएंड सर्वर पर जाता है

अगर Apigee Edge को ऊपर दिए गए डायग्राम में दिखाए गए तरीके से सेट अप किया गया है, तो एक या एक से ज़्यादा इंटरमीडिएट कॉम्पोनेंट का इस्तेमाल करें. इसके लिए, यहां दिए गए सबसे सही तरीके अपनाएं:

  1. क्लाइंट ऐप्लिकेशन, फ़्लो का पहला कॉम्पोनेंट होता है. क्लाइंट पर सबसे ज़्यादा टाइम आउट वैल्यू सेट की जानी चाहिए.
  2. बैकएंड सर्वर, फ़्लो का आखिरी कॉम्पोनेंट होता है. बैकएंड सर्वर पर, सबसे कम टाइम आउट वैल्यू सेट की जानी चाहिए.
  3. इंटरमीडियरी कॉम्पोनेंट के साथ-साथ हर कॉम्पोनेंट के लिए, टाइम आउट की वैल्यू को इस क्रम में कॉन्फ़िगर करें:

    क्लाइंट पर टाइम आउट कॉन्फ़िगर करें. इसके बाद, इंटरमीडियरी कॉम्पोनेंट 1, राऊटर, मैसेज प्रोसेसर, इंटरमीडियरी कॉम्पोनेंट 2, और बैकएंड सर्वर पर टाइम आउट कॉन्फ़िगर करें

    नीचे दिए गए उदाहरण में, किसी भी समस्या से बचने के लिए, ऊपर दिए गए दिशा-निर्देशों के मुताबिक अलग-अलग कॉम्पोनेंट पर सेट की गई टाइम आउट वैल्यू दिखाई गई हैं:

    क्लाइंट पर 63 सेकंड, इंटरमीडियरी कॉम्पोनेंट 1 पर 60 सेकंड, राऊटर पर 57 सेकंड, मैसेज प्रोसेसर पर 55 सेकंड, इंटरमीडियरी कॉम्पोनेंट 2 पर 52 सेकंड, और बैकएंड सर्वर पर 59 सेकंड के लिए टाइम आउट कॉन्फ़िगर करें