यह Apigee Edge के दस्तावेज़ हैं.
पर जाएं
Apigee X दस्तावेज़. info
इस दस्तावेज़ में, Apigee Edge के मैसेज प्रोसेसर के लिए कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है.
कनेक्शन टाइम आउट, वह समय होता है जिसके दौरान मैसेज प्रोसेसर, टारगेट सर्वर से कनेक्शन बनाने के लिए इंतज़ार करता है. मैसेज प्रोसेसर पर, कनेक्शन टाइम आउट प्रॉपर्टी की डिफ़ॉल्ट वैल्यू 3 सेकंड होती है. यह टाइम आउट पीरियड, टारगेट एंडपॉइंट कॉन्फ़िगरेशन और आपके एपीआई प्रॉक्सी की
ServiceCallout नीति में कॉन्फ़िगर किए गए
बैकएंड सर्वर पर लागू होता है.
मैसेज प्रोसेसर के लिए कनेक्शन टाइम आउट को, आपकी ज़रूरत के हिसाब से 3 सेकंड की डिफ़ॉल्ट वैल्यू से बढ़ाया या घटाया जा सकता है. इसे इन तरीकों से कॉन्फ़िगर किया जा सकता है:
- एपीआई प्रॉक्सी में
- टारगेट एंडपॉइंट में
ServiceCalloutनीति में
- मैसेज प्रोसेसर पर
मैसेज प्रोसेसर पर कनेक्शन टाइम आउट को कंट्रोल करने वाली प्रॉपर्टी ये हैं:
| प्रॉपर्टी का नाम | जगह | ब्यौरा |
|---|---|---|
connect.timeout.millis |
एपीआई प्रॉक्सी:
|
यह वह ज़्यादा से ज़्यादा समय है जिसके दौरान मैसेज प्रोसेसर, टारगेट सर्वर से कनेक्ट होने के लिए इंतज़ार करता है.
डिफ़ॉल्ट रूप से, यह प्रॉपर्टी, मैसेज प्रोसेसर पर
अगर इस प्रॉपर्टी में, एपीआई प्रॉक्सी से जुड़े टारगेट सर्वर के लिए नया टाइम आउट वैल्यू डालकर बदलाव किया जाता है, तो सिर्फ़ उस टारगेट सर्वर के लिए कनेक्ट होने में लगने वाले समय पर असर पड़ता है. |
HTTPClient.connect.timeout.millis |
मैसेज प्रोसेसर |
यह वह ज़्यादा से ज़्यादा समय है जिसके दौरान मैसेज प्रोसेसर, टारगेट सर्वर से कनेक्ट होने के लिए इंतज़ार करता है. इस प्रॉपर्टी का इस्तेमाल, इस मैसेज प्रोसेसर पर चल रही सभी एपीआई प्रॉक्सी के लिए किया जाता है.
इस प्रॉपर्टी की डिफ़ॉल्ट वैल्यू
आपके पास इस प्रॉपर्टी में बदलाव करने का विकल्प होता है. इसके लिए, नीचे दिए गए
मैसेज प्रोसेसर पर कनेक्शन टाइम आउट कॉन्फ़िगर करना में बताया गया तरीका अपनाएं. इसके अलावा, एपीआई प्रॉक्सी लेवल पर |
शुरू करने से पहले
इस दस्तावेज़ में दिए गए तरीके का इस्तेमाल करने से पहले, पक्का करें कि आपको इन विषयों के बारे में जानकारी हो:
- अगर आपको कनेक्शन टाइम आउट के बारे में जानकारी नहीं है, तो
connect.timeout.millisप्रॉपर्टी का ब्यौरा TargetEndpoint ट्रांसपोर्ट प्रॉपर्टी की खास जानकारी में देखें. - अगर आपको प्राइवेट क्लाउड पर Edge के लिए प्रॉपर्टी कॉन्फ़िगर करने के बारे में जानकारी नहीं है, तो Edge को कॉन्फ़िगर करने का तरीका पढ़ें.
एपीआई प्रॉक्सी में कनेक्शन टाइम आउट कॉन्फ़िगर करना
एपीआई प्रॉक्सी में, कनेक्शन टाइम आउट को इन जगहों पर कॉन्फ़िगर किया जा सकता है:
- टारगेट एंडपॉइंट
ServiceCalloutनीति
एपीआई प्रॉक्सी के टारगेट एंडपॉइंट में कनेक्शन टाइम आउट कॉन्फ़िगर करना
इस सेक्शन में, अपनी एपीआई प्रॉक्सी के टारगेट एंडपॉइंट में कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है.
कनेक्शन टाइम आउट को connect.timeout.millis प्रॉपर्टी के ज़रिए कॉन्फ़िगर किया जा सकता है,
यह प्रॉपर्टी, मिलीसेकंड में कनेक्शन टाइम आउट की वैल्यू दिखाती है.
- Edge यूज़र इंटरफ़ेस (यूआई) में, वह एपीआई प्रॉक्सी चुनें जिसमें आपको कनेक्ट होने में लगने वाले समय की नई वैल्यू कॉन्फ़िगर करनी है.
- वह टारगेट एंडपॉइंट चुनें जिसमें आपको बदलाव करना है.
TargetEndpointकॉन्फ़िगरेशन में,<HTTPTargetConnection>एलिमेंट के तहत,connect.timeout.millisप्रॉपर्टी को सही वैल्यू के साथ जोड़ें.उदाहरण के लिए, कनेक्शन टाइम आउट को
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>- अपनी एपीआई प्रॉक्सी में किए गए बदलाव सेव करें.
एपीआई प्रॉक्सी की ServiceCallout नीति में कनेक्शन टाइम आउट कॉन्फ़िगर करना
इस सेक्शन में, अपनी एपीआई प्रॉक्सी की ServiceCallout
नीति में कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है. कनेक्शन टाइम आउट को
connect.timeout.millis प्रॉपर्टी के ज़रिए कॉन्फ़िगर किया जा सकता है. यह प्रॉपर्टी, मिलीसेकंड में कनेक्ट होने में लगने वाले समय की वैल्यू दिखाती है.
connect.timeout.millis प्रॉपर्टी का इस्तेमाल करके, ServiceCallout नीति में कनेक्शन टाइम आउट को कॉन्फ़िगर करने के लिए:
- Edge यूज़र इंटरफ़ेस (यूआई) में, वह एपीआई प्रॉक्सी चुनें जिसमें आपको
कनेक्ट होने में लगने वाले समय की नई वैल्यू
ServiceCalloutनीति के लिए कॉन्फ़िगर करनी है. - वह
ServiceCalloutनीति चुनें जिसमें आपको बदलाव करना है. TargetEndpointकॉन्फ़िगरेशन में,<HTTPTargetConnection>एलिमेंट के तहत,connect.timeout.millisप्रॉपर्टी को सही वैल्यू के साथ जोड़ें.उदाहरण के लिए, कनेक्शन टाइम आउट को
5सेकंड में बदलने के लिए, कोड का यह ब्लॉक जोड़ें:<Properties> <Property name="connect.timeout.millis">5000</Property> </Properties>
connect.timeout.millisप्रॉपर्टी मिलीसेकंड में होती है. इसलिए,5सेकंड की वैल्यू5000होती है.यहां दिए गए उदाहरणों में, अपनी एपीआई प्रॉक्सी की
ServiceCalloutनीति में कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है:बैकएंड सर्वर के लिए यूआरएल का इस्तेमाल करके, 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 नीति के कॉन्फ़िगरेशन का उदाहरण
<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>- अपनी एपीआई प्रॉक्सी में किए गए बदलाव सेव करें.
मैसेज प्रोसेसर पर कनेक्शन टाइम आउट कॉन्फ़िगर करना
इस सेक्शन में, मैसेज प्रोसेसर पर कनेक्शन टाइम आउट को कॉन्फ़िगर करने का तरीका बताया गया है.
कनेक्शन टाइम आउट को प्रॉपर्टी
conf_http_HTTPClient.connect.timeout.millis के ज़रिए कॉन्फ़िगर किया जा सकता है. यह प्रॉपर्टी, मैसेज प्रोसेसर कॉम्पोनेंट पर मिलीसेकंड में कनेक्शन टाइम आउट
की वैल्यू दिखाती है. इसके लिए,
Edge को कॉन्फ़िगर करने का तरीका में बताए गए सिंटैक्स के मुताबिक टोकन का इस्तेमाल करें.
मैसेज प्रोसेसर पर कनेक्शन टाइम आउट को कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:
- मैसेज प्रोसेसर मशीन पर, किसी एडिटर में यह फ़ाइल खोलें. अगर यह फ़ाइल पहले से मौजूद नहीं है, तो इसे बनाएं.
/opt/apigee/customer/application/message-processor.properties
उदाहरण के लिए,
vi, का इस्तेमाल करके फ़ाइल खोलने के लिए, यह डालें:vi /opt/apigee/customer/application/message-processor.properties
- प्रॉपर्टी वाली फ़ाइल में, इस फ़ॉर्मैट में एक लाइन जोड़ें. इसमें
TIME_IN_MILLISECONDS के लिए कोई वैल्यू डालें:
conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
उदाहरण के लिए, मैसेज प्रोसेसर पर कनेक्शन टाइम आउट को
5सेकंड में बदलने के लिए, यह लाइन जोड़ें:conf_http_HTTPClient.connect.timeout.millis=5000
- बदलावों को सेव करें.
- पक्का करें कि प्रॉपर्टी वाली फ़ाइल का मालिकाना हक
apigeeउपयोगकर्ता के पास हो, जैसा कि यहां दिखाया गया है:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- मैसेज प्रोसेसर को रीस्टार्ट करें, जैसा कि यहां दिखाया गया है:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- अगर आपके पास एक से ज़्यादा मैसेज प्रोसेसर हैं, तो सभी मैसेज प्रोसेसर पर ऊपर दिया गया तरीका दोहराएं.
मैसेज प्रोसेसर पर कनेक्शन टाइम आउट की पुष्टि करना
इस सेक्शन में, यह पुष्टि करने का तरीका बताया गया है कि मैसेज प्रोसेसर पर कनेक्शन टाइम आउट में बदलाव हो गया है.
मैसेज प्रोसेसर पर कनेक्शन टाइम आउट सेट करने के लिए, भले ही आपने conf_http_HTTPClient.connect.timeout.millis टोकन का इस्तेमाल किया हो, लेकिन आपको यह पुष्टि करनी होगी कि HTTPClient.connect.timeout.millis प्रॉपर्टी को नई वैल्यू के साथ सेट किया गया है या नहीं.
- मैसेज प्रोसेसर मशीन पर, प्रॉपर्टी
HTTPTransport.connect.timeout.millisको/opt/apigee/edge-message-processor/confडायरेक्ट्री में खोजें और देखें कि इसे नई वैल्यू के साथ सेट किया गया है या नहीं. जैसा कि यहां दिखाया गया है:grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
- अगर मैसेज प्रोसेसर पर, कनेक्शन टाइम आउट की नई वैल्यू सेट हो जाती है, तो
ऊपर दिया गया कमांड,
http.propertiesफ़ाइल में नई वैल्यू दिखाता है.कनेक्शन टाइम आउट को
5सेकंड पर कॉन्फ़िगर करने के बाद, ऊपर दिए गए कमांड का सैंपल नतीजा यहां दिया गया है:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
ऊपर दिए गए उदाहरण के आउटपुट में, ध्यान दें कि
http.propertiesमें,HTTPClient.connect.timeout.millisप्रॉपर्टी को नई वैल्यू5000के साथ सेट किया गया है. इससे पता चलता है कि मैसेज प्रोसेसर पर, कनेक्शन टाइम आउट को5सेकंड पर कॉन्फ़िगर कर दिया गया है. - अगर आपको अब भी
HTTPClient.connect.timeout.millisप्रॉपर्टी की पुरानी वैल्यू दिख रही है, तो पक्का करें कि आपने मैसेज प्रोसेसर पर कनेक्शन टाइम आउट कॉन्फ़िगर करना में बताए गए सभी चरणों का सही तरीके से पालन किया हो. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को सही तरीके से फिर से दोहराएं. - अगर अब भी कनेक्शन टाइम आउट में बदलाव नहीं किया जा सकता है, तो Google Cloud Apigee Edge की सहायता टीम से संपर्क करें.