मैसेज प्रोसेसर पर कनेक्शन का टाइम आउट कॉन्फ़िगर करना

आपको Apigee Edge दस्तावेज़ दिख रहा है.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है इस पेज पर जाएं Apigee X दस्तावेज़.
जानकारी

इस दस्तावेज़ में, Apigee Edge मैसेज प्रोसेसर के लिए, कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है.

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

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

  • एपीआई प्रॉक्सी में
    • टारगेट एंडपॉइंट में
    • ServiceCallout नीति में
  • मैसेज प्रोसेसर पर

ये प्रॉपर्टी, मैसेज प्रोसेसर पर कनेक्शन के टाइम आउट को कंट्रोल करती हैं:

प्रॉपर्टी का नाम जगह ब्यौरा
connect.timeout.millis एपीआई प्रॉक्सी:
  • टारगेट एंडपॉइंट
  • ServiceCallout नीति

यह वह ज़्यादा से ज़्यादा समय है जिसमें मैसेज प्रोसेसर, टारगेट सर्वर से कनेक्ट होने का इंतज़ार करता है.

डिफ़ॉल्ट रूप से, यह प्रॉपर्टी मैसेज प्रोसेसर पर HTTPClient.connect.timeout.millis प्रॉपर्टी, जहां डिफ़ॉल्ट वैल्यू 3 सेकंड है.

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

HTTPClient.connect.timeout.millis मैसेज प्रोसेसर

यह वह ज़्यादा से ज़्यादा समय है जिसमें मैसेज प्रोसेसर, टारगेट सर्वर से कनेक्ट होने का इंतज़ार करता है.

इस प्रॉपर्टी का इस्तेमाल, मैसेज प्रोसेसर पर चल रहे सभी एपीआई प्रॉक्सी के लिए किया जाता है.

इस प्रॉपर्टी की डिफ़ॉल्ट वैल्यू 3 सेकंड है.

आप में बताए गए अनुसार इस प्रॉपर्टी को संशोधित कर सकते हैं नीचे मैसेज प्रोसेसर पर कनेक्शन टाइम आउट कॉन्फ़िगर करना या आप इस मान को ओवरराइट कर सकते हैं इसके लिए, एपीआई प्रॉक्सी लेवल पर प्रॉपर्टी connect.timeout.millis सेट करें.

शुरू करने से पहले

इस दस्तावेज़ में दिया गया तरीका अपनाने से पहले, पक्का करें कि आपने इन विषयों को समझ लिया हो:

API प्रॉक्सी में कनेक्शन टाइम आउट कॉन्फ़िगर करना

कनेक्शन टाइम आउट को एपीआई प्रॉक्सी में इन जगहों पर कॉन्फ़िगर किया जा सकता है:

  • टारगेट एंडपॉइंट
  • ServiceCallout नीति

एपीआई प्रॉक्सी के टारगेट एंडपॉइंट में कनेक्शन टाइम आउट कॉन्फ़िगर करना

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

  1. Edge के यूज़र इंटरफ़ेस (यूआई) में, वह एपीआई प्रॉक्सी चुनें जिसमें आपको नई फ़ाइल को कॉन्फ़िगर करना है कनेक्शन टाइम आउट मान.
  2. वह टारगेट एंडपॉइंट चुनें जिसमें आपको बदलाव करना है.
  3. प्रॉपर्टी में connect.timeout.millis एट्रिब्यूट की वैल्यू के तौर पर, TargetEndpoint कॉन्फ़िगरेशन में <HTTPTargetConnection> एलिमेंट.

    उदाहरण के लिए, कनेक्शन के टाइम आउट को 5 सेकंड में बदलने के लिए, कोड का निम्न ब्लॉक:

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    connect.timeout.millis प्रॉपर्टी मिलीसेकंड में है, इसलिए 5 सेकंड 5000 है.

    नीचे दिए गए उदाहरणों में, टारगेट एंडपॉइंट में कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है आपके एपीआई प्रॉक्सी का कॉन्फ़िगरेशन:

    बैकएंड सर्वर के लिए यूआरएल का इस्तेमाल करने वाले टारगेट एंडपॉइंट कॉन्फ़िगरेशन का उदाहरण

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>
    

    टारगेट सर्वर का इस्तेमाल करके, टारगेट एंडपॉइंट कॉन्फ़िगरेशन का उदाहरण

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
    
  4. अपने एपीआई प्रॉक्सी में किए गए बदलावों को सेव करें.

एपीआई प्रॉक्सी की सर्विसकॉलआउट नीति में, कनेक्शन टाइम आउट कॉन्फ़िगर करना

इस सेक्शन में, ServiceCallout में कनेक्शन के टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है आपके एपीआई प्रॉक्सी की नीति के बारे में ज़्यादा जानें. कनेक्शन टाइम आउट को इसके ज़रिए कॉन्फ़िगर किया जा सकता है connect.timeout.millis प्रॉपर्टी, जो मिलीसेकंड.

ServiceCallout नीति में, कनेक्शन टाइम आउट को कॉन्फ़िगर करने के लिए, connect.timeout.millis प्रॉपर्टी:

  1. Edge के यूज़र इंटरफ़ेस (यूआई) में, वह एपीआई प्रॉक्सी चुनें जिसमें आपको नई फ़ाइल को कॉन्फ़िगर करना है ServiceCallout नीति के लिए, कनेक्शन टाइम आउट की वैल्यू.
  2. उस ServiceCallout नीति को चुनें जिसमें आपको बदलाव करना है.
  3. इसके तहत, सही वैल्यू के साथ connect.timeout.millis प्रॉपर्टी जोड़ें TargetEndpoint कॉन्फ़िगरेशन में <HTTPTargetConnection> एलिमेंट.

    उदाहरण के लिए, कनेक्शन के टाइम आउट को 5 सेकंड में बदलने के लिए, कोड का यह ब्लॉक जोड़ें:

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>
    

    connect.timeout.millis प्रॉपर्टी मिलीसेकंड में है, इसलिए 5 सेकंड 5000 है.

    नीचे दिए गए उदाहरणों में, आपके एपीआई प्रॉक्सी की ServiceCallout नीति:

    बैकएंड सर्वर के लिए यूआरएल का इस्तेमाल करने वाली सेवा कॉलआउट नीति को कॉन्फ़िगर करने का उदाहरण

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <URL>https://mocktarget.apigee.net/json</URL>
      </HTTPTargetConnection>
    </ServiceCallout>
    

    टारगेट सर्वर का इस्तेमाल करके, सेवा कॉलआउट नीति को कॉन्फ़िगर करने का उदाहरण

    <ServiceCallout enabled="true" name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <Response>calloutResponse</Response>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
      <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
    
  4. अपने एपीआई प्रॉक्सी में किए गए बदलावों को सेव करें.

मैसेज प्रोसेसर पर, कनेक्शन का टाइम आउट कॉन्फ़िगर करना

इस सेक्शन में मैसेज प्रोसेसर पर, कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है. कनेक्शन टाइम आउट को प्रॉपर्टी के ज़रिए कॉन्फ़िगर किया जा सकता है conf_http_HTTPClient.connect.timeout.millis, इससे कनेक्शन टाइम आउट का पता चलता है के अनुसार टोकन का उपयोग करके, संदेश प्रोसेसर घटक पर मिलीसेकंड में मान होता है में बताया गया सिंटैक्स Edge को कैसे कॉन्फ़िगर करें.

मैसेज प्रोसेसर पर, कनेक्शन का टाइम आउट कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:

  1. मैसेज प्रोसेसर मशीन पर, यहां दी गई फ़ाइल को एडिटर में खोलें. अगर ऐसा नहीं होता है, तो तो इसे बनाएं.
    /opt/apigee/customer/application/message-processor.properties
    

    उदाहरण के लिए, vi का इस्तेमाल करके फ़ाइल खोलने के लिए, नीचे दी गई चीज़ें डालें:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. प्रॉपर्टी फ़ाइल में, नीचे दिए गए फ़ॉर्मैट में एक लाइन जोड़ें. TIME_IN_MILLISECONDS:
    conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
    

    उदाहरण के लिए, मैसेज प्रोसेसर पर, कनेक्शन के टाइम आउट को 5 सेकंड में बदलने के लिए, यह पंक्ति जोड़ें:

    conf_http_HTTPClient.connect.timeout.millis=5000
    
  3. बदलावों को सेव करें.
  4. पक्का करें कि प्रॉपर्टी फ़ाइल का मालिकाना हक, apigee उपयोगकर्ता के पास है, जैसा कि यहां दिखाया गया है:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. नीचे बताए गए तरीके से, मैसेज प्रोसेसर को रीस्टार्ट करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. अगर आपके पास एक से ज़्यादा मैसेज प्रोसेसर हैं, तो ऊपर दिए गए चरणों को सभी मैसेज पर दोहराएं प्रोसेसर.

मैसेज प्रोसेसर पर, कनेक्शन के टाइम आउट की पुष्टि की जा रही है

इस सेक्शन में इसकी पुष्टि करने का तरीका बताया गया है कि कनेक्शन के टाइम आउट को बदल दिया गया है या नहीं मैसेज प्रोसेसर का इस्तेमाल करना शुरू कर दिया.

भले ही, आप सेट करने के लिए conf_http_HTTPClient.connect.timeout.millis टोकन का इस्तेमाल करते हों संदेश प्रोसेसर पर कनेक्शन टाइम आउट हो जाता है, तो आपको यह सत्यापित करना होगा कि वास्तविक HTTPClient.connect.timeout.millis को नई वैल्यू से सेट कर दिया गया है.

  1. मैसेज प्रोसेसर मशीन पर, प्रॉपर्टी खोजें HTTPTransport.connect.timeout.millis /opt/apigee/edge-message-processor/conf डायरेक्ट्री को खोलकर देखें कि उसमें को नई वैल्यू के साथ सेट किया गया है, जैसा कि नीचे दिखाया गया है:
    grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. अगर संदेश प्रोसेसर पर नया कनेक्शन टाइमआउट मान सफलतापूर्वक सेट हो जाता है, तो ऊपर दिए गए निर्देश http.properties फ़ाइल में नई वैल्यू दिखाता है.

    आपके कनेक्शन टाइम आउट को कॉन्फ़िगर करने के बाद, ऊपर दिए गए निर्देश से मिलने वाला सैंपल नतीजा 5 सेकंड इस तरह है:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
    

    ऊपर दिए गए उदाहरण के आउटपुट में, ध्यान दें कि प्रॉपर्टी HTTPClient.connect.timeout.millis http.properties में नए मान 5000 के साथ को सेट कर दिया गया है. इससे पता चलता है कि यह कि कनेक्शन टाइम आउट को मैसेज पर 5 सेकंड के लिए कॉन्फ़िगर किया गया है प्रोसेसर.

  3. अगर आपको अब भी प्रॉपर्टी HTTPClient.connect.timeout.millis की पुरानी वैल्यू दिख रही है, तो इसके बाद, पुष्टि करें कि आपने यहां बताए गए सभी चरणों का पालन किया है मैसेज प्रोसेसर पर, कनेक्शन का टाइम आउट कॉन्फ़िगर करना सही तरीके से. अगर आपसे कोई चरण छूट गया है, तो सभी चरणों को फिर से सही तरीके से दोहराएं.
  4. अगर अब भी कनेक्शन के टाइम आउट में बदलाव नहीं हो पा रहा है, तो Google Cloud Apigee Edge की सहायता टीम से संपर्क करें.