आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं. जानकारी
इस दस्तावेज़ में, Apigee Edge मैसेज प्रोसेसर के लिए कीप अलाइव टाइमआउट को कॉन्फ़िगर करने का तरीका बताया गया है.
Message Processor पर कीप अलाइव टाइमआउट की सुविधा उपलब्ध होती है. इसकी मदद से, एक टीसीपी कनेक्शन का इस्तेमाल करके, बैकएंड सर्वर से कई एचटीटीपी अनुरोध भेजे और जवाब पाए जा सकते हैं. इसके लिए, हर अनुरोध/जवाब के लिए नया कनेक्शन खोलने की ज़रूरत नहीं होती.
Message Processor पर, कीप अलाइव टाइमआउट प्रॉपर्टी की डिफ़ॉल्ट वैल्यू 60 सेकंड होती है. यह टाइम आउट अवधि, टारगेट एंडपॉइंट कॉन्फ़िगरेशन और आपकी एपीआई प्रॉक्सी की ServiceCallout नीति में कॉन्फ़िगर किए गए बैकएंड सर्वर पर लागू होती है.
Message Processor के लिए कीप अलाइव टाइमआउट को, अपनी ज़रूरतों के हिसाब से 60 सेकंड की डिफ़ॉल्ट वैल्यू से बढ़ाया या घटाया जा सकता है. इसे इन तरीकों से कॉन्फ़िगर किया जा सकता है:
- एपीआई प्रॉक्सी में
- टारगेट एंडपॉइंट में
ServiceCalloutकी नीति में
- मैसेज प्रोसेसर पर
नीचे दी गई प्रॉपर्टी, मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट को कंट्रोल करती हैं:
| प्रॉपर्टी का नाम | जगह | ब्यौरा |
|---|---|---|
keepalive.timeout.millis |
एपीआई प्रॉक्सी:
|
यह ज़्यादा से ज़्यादा वह समय है जब मैसेज प्रोसेसर, एक टीसीपी कनेक्शन को कई एचटीटीपी अनुरोध/जवाब भेजने और पाने की अनुमति देता है. ऐसा हर अनुरोध/जवाब के लिए नया कनेक्शन खोलने के बजाय किया जाता है. डिफ़ॉल्ट रूप से, यह प्रॉपर्टी Message Processor पर अगर इस प्रॉपर्टी में बदलाव करके, टारगेट एंडपॉइंट या किसी खास एपीआई प्रॉक्सी में |
HTTPClient.keepalive.timeout.millis |
मैसेज प्रोसेसर |
यह वह ज़्यादा से ज़्यादा समय है जब मैसेज प्रोसेसर, एक टीसीपी कनेक्शन को कई एचटीटीपी अनुरोध/जवाब भेजने और पाने की अनुमति देता है. ऐसा हर अनुरोध/जवाब के लिए नया कनेक्शन खोलने के बजाय किया जाता है. इस प्रॉपर्टी का इस्तेमाल, इस मैसेज प्रोसेसर पर चल रही सभी एपीआई प्रॉक्सी के लिए किया जाता है. इस प्रॉपर्टी की डिफ़ॉल्ट वैल्यू इस प्रॉपर्टी में बदलाव किया जा सकता है. इसके लिए, नीचे दिए गए मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट कॉन्फ़िगर करना लेख पढ़ें. इसके अलावा, एपीआई प्रॉक्सी लेवल पर |
शुरू करने से पहले
इस दस्तावेज़ में दिए गए चरणों का इस्तेमाल करने से पहले, पक्का करें कि आपको इन विषयों के बारे में जानकारी हो:
- अगर आपको कीप अलाइव टाइमआउट के बारे में जानकारी नहीं है, तो
keepalive.timeout.millisप्रॉपर्टी का ब्यौरा TargetEndpoint Transport Property Specification में देखें. - अगर आपको Private Cloud पर Edge के लिए प्रॉपर्टी कॉन्फ़िगर करने के बारे में नहीं पता, तो Edge को कॉन्फ़िगर करने का तरीका पढ़ें.
एपीआई प्रॉक्सी में कीप अलाइव टाइमआउट कॉन्फ़िगर करना
कीप अलाइव टाइमआउट को एपीआई प्रॉक्सी में इन जगहों पर कॉन्फ़िगर किया जा सकता है:
- टारगेट एंडपॉइंट
ServiceCalloutनीति
एपीआई प्रॉक्सी के टारगेट एंडपॉइंट में कीप अलाइव टाइमआउट कॉन्फ़िगर करना
इस सेक्शन में, आपकी एपीआई प्रॉक्सी के टारगेट एंडपॉइंट में कीप अलाइव टाइमआउट को कॉन्फ़िगर करने का तरीका बताया गया है. कीप अलाइव टाइमआउट को keepalive.timeout.millis प्रॉपर्टी के ज़रिए कॉन्फ़िगर किया जा सकता है. यह प्रॉपर्टी, कीप अलाइव टाइमआउट की वैल्यू को मिलीसेकंड में दिखाती है.
- Edge यूज़र इंटरफ़ेस (यूआई) में, वह एपीआई प्रॉक्सी चुनें जिसमें आपको कीप अलाइव टाइमआउट की नई वैल्यू कॉन्फ़िगर करनी है.
- वह टारगेट एंडपॉइंट चुनें जिसमें आपको बदलाव करना है.
-
TargetEndpointकॉन्फ़िगरेशन में,<HTTPTargetConnection>एलिमेंट के नीचे सही वैल्यू वालीkeepalive.timeout.millisप्रॉपर्टी जोड़ें.उदाहरण के लिए, कीप अलाइव टाइमआउट को
30सेकंड पर सेट करने के लिए, कोड का यह ब्लॉक जोड़ें:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
keepalive.timeout.millisप्रॉपर्टी की वैल्यू मिलीसेकंड में होती है. इसलिए,30सेकंड की वैल्यू30000होती है.यहां दिए गए उदाहरणों में, आपकी एपीआई प्रॉक्सी के टारगेट एंडपॉइंट कॉन्फ़िगरेशन में कीप अलाइव टाइमआउट को कॉन्फ़िगर करने का तरीका बताया गया है:
बैकएंड सर्वर के यूआरएल का इस्तेमाल करके, टारगेट एंडपॉइंट कॉन्फ़िगरेशन का उदाहरण
<TargetEndpoint name="default"> <HTTPTargetConnection> <URL>https://mocktarget.apigee.net/json</URL> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> </HTTPTargetConnection> </TargetEndpoint>टारगेट सर्वर का इस्तेमाल करके, टारगेट एंडपॉइंट कॉन्फ़िगरेशन का उदाहरण
<TargetEndpoint name="default"> <HTTPTargetConnection> <LoadBalancer> <Server name="target1" /> <Server name="target2" /> </LoadBalancer> <Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </TargetEndpoint> - अपनी एपीआई प्रॉक्सी में किए गए बदलाव सेव करें.
एपीआई प्रॉक्सी की ServiceCallout नीति में, कीप अलाइव टाइमआउट कॉन्फ़िगर करना
इस सेक्शन में, एपीआई प्रॉक्सी की ServiceCallout नीति में कीप अलाइव टाइमआउट को कॉन्फ़िगर करने का तरीका बताया गया है. कीप अलाइव टाइमआउट को the keepalive.timeout.millis प्रॉपर्टी के ज़रिए कॉन्फ़िगर किया जा सकता है. यह प्रॉपर्टी, कीप अलाइव टाइमआउट की वैल्यू को मिलीसेकंड में दिखाती है.
keepalive.timeout.millis प्रॉपर्टी का इस्तेमाल करके, ServiceCallout नीति में कीप अलाइव टाइमआउट को कॉन्फ़िगर करने के लिए:
- Edge के यूज़र इंटरफ़ेस (यूआई) में, वह एपीआई प्रॉक्सी चुनें जिसके लिए आपको
ServiceCalloutनीति के लिए, कीप अलाइव टाइमआउट की नई वैल्यू कॉन्फ़िगर करनी है. - वह
ServiceCalloutनीति चुनें जिसमें आपको बदलाव करना है. TargetEndpointकॉन्फ़िगरेशन में,<HTTPTargetConnection>एलिमेंट के नीचेkeepalive.timeout.millisप्रॉपर्टी को सही वैल्यू के साथ जोड़ें.उदाहरण के लिए, कीप अलाइव टाइमआउट को
30सेकंड पर बदलने के लिए, कोड का यह ब्लॉक जोड़ें:<Properties> <Property name="keepalive.timeout.millis">30000</Property> </Properties>
keepalive.timeout.millisप्रॉपर्टी की वैल्यू मिलीसेकंड में होती है. इसलिए,30सेकंड की वैल्यू30000होती है.यहां दिए गए उदाहरणों में, आपकी एपीआई प्रॉक्सी की
ServiceCalloutनीति में कीप अलाइव टाइमआउट को कॉन्फ़िगर करने का तरीका बताया गया है:बैकएंड सर्वर के यूआरएल का इस्तेमाल करके, ServiceCallout नीति के कॉन्फ़िगरेशन का उदाहरण
<ServiceCallout name="Service-Callout-1"> <DisplayName>Service Callout-1</DisplayName> <HTTPTargetConnection> <Properties> <Property name="keepalive.timeout.millis">30000</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="keepalive.timeout.millis">30000</Property> </Properties> <Path>/test</Path> </HTTPTargetConnection> </ServiceCallout>- अपनी एपीआई प्रॉक्सी में किए गए बदलाव सेव करें.
मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट कॉन्फ़िगर करना
इस सेक्शन में, मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट को कॉन्फ़िगर करने का तरीका बताया गया है. कीप अलाइव टाइमआउट को प्रॉपर्टी HTTPClient.keepalive.timeout.millis के ज़रिए कॉन्फ़िगर किया जा सकता है. यह प्रॉपर्टी, Message Processor कॉम्पोनेंट पर कीप अलाइव टाइमआउट की वैल्यू को मिलीसेकंड में दिखाती है. इस प्रॉपर्टी पर Message Processor में टिप्पणी की गई है. इसलिए, आपको खास सिंटैक्स conf/http.properties+HTTPClient.keepalive.timeout.millis का इस्तेमाल करना होगा. इसके बारे में Edge को कॉन्फ़िगर करने का तरीका सेक्शन में
फ़िलहाल टिप्पणी किए गए टोकन को सेट करना में बताया गया है.
मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट को कॉन्फ़िगर करने के लिए, यह तरीका अपनाएं:
- मैसेज प्रोसेसर मशीन पर, इस फ़ाइल को किसी एडिटर में खोलें. अगर यह पहले से मौजूद नहीं है, तो इसे बनाएं.
/opt/apigee/customer/application/message-processor.properties
उदाहरण के लिए,
viका इस्तेमाल करके फ़ाइल खोलने के लिए, यह डालें:vi /opt/apigee/customer/application/message-processor.properties
- प्रॉपर्टी फ़ाइल में, इस फ़ॉर्मैट में एक लाइन जोड़ें. साथ ही, TIME_IN_MILLISECONDS के लिए कोई वैल्यू डालें:
conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS
उदाहरण के लिए, Message Processor पर कीप अलाइव टाइमआउट को
30सेकंड पर बदलने के लिए, यह लाइन जोड़ें:conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
- बदलावों को सेव करें.
- पक्का करें कि प्रॉपर्टी फ़ाइल का मालिकाना हक
apigeeउपयोगकर्ता के पास हो. इसके बारे में यहां बताया गया है:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- नीचे दिए गए तरीके से, मैसेज प्रोसेसर को फिर से शुरू करें:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- अगर आपके पास एक से ज़्यादा मैसेज प्रोसेसर हैं, तो ऊपर दिया गया तरीका सभी मैसेज प्रोसेसर पर दोहराएं.
मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट की पुष्टि की जा रही है
इस सेक्शन में, यह पुष्टि करने का तरीका बताया गया है कि मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट में बदलाव हो गया है.
Message processor पर कीप अलाइव टाइमआउट सेट करने के लिए, खास सिंटैक्स conf/http.properties+HTTPClient.keepalive.timeout.millis का इस्तेमाल किया जाता है. हालांकि, आपको यह पुष्टि करनी होगी कि नई वैल्यू के साथ असल प्रॉपर्टी HTTPClient.keepalive.timeout.millis सेट की गई है.
- मैसेज प्रोसेसर मशीन पर,
HTTPClient.keepalive.timeout.millisडायरेक्ट्री में/opt/apigee/edge-message-processor/confप्रॉपर्टी खोजें. इसके बाद, देखें कि इसे नीचे दिखाए गए तरीके से नई वैल्यू के साथ सेट किया गया है या नहीं:grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
-
अगर मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट की नई वैल्यू सेट हो जाती है, तो ऊपर दिया गया कमांड,
http.propertiesफ़ाइल में नई वैल्यू दिखाता है.कीप अलाइव टाइमआउट को
30सेकंड पर कॉन्फ़िगर करने के बाद, ऊपर दी गई कमांड का सैंपल नतीजा यहां दिया गया है:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000
ऊपर दिए गए उदाहरण में, ध्यान दें कि प्रॉपर्टी
HTTPClient.keepalive.timeout.millisकोhttp.propertiesमें नई वैल्यू30000के साथ सेट किया गया है. इससे पता चलता है कि मैसेज प्रोसेसर पर, कीप अलाइव टाइमआउट को30सेकंड पर कॉन्फ़िगर किया गया है. - अगर आपको अब भी प्रॉपर्टी के लिए पुरानी वैल्यू दिख रही है
HTTPClient.keepalive.timeout.millis, तो पुष्टि करें कि आपने मैसेज प्रोसेसर पर कीप अलाइव टाइमआउट कॉन्फ़िगर करना में बताए गए सभी चरणों का सही तरीके से पालन किया हो. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को फिर से सही तरीके से दोहराएं. - अगर अब भी कीप अलाइव टाइमआउट में बदलाव नहीं किया जा सकता, तो Google Cloud की Apigee Edge सहायता टीम से संपर्क करें.