मैसेज प्रोसेसर पर G1GC चालू करना

यह Apigee Edge के दस्तावेज़ हैं.
पर जाएं Apigee X के दस्तावेज़ों.
info

इस दस्तावेज़ में, Apigee Edge के Message Processors पर Garbage First Garbage Collector (G1GC) को चालू करने का तरीका बताया गया है.

Apigee Edge का Message Processor, Java Virtual Machine (JVM) पर चलता है. यह डिफ़ॉल्ट Garbage Collector का इस्तेमाल करता है. यह सीरियल या पैरलल हो सकता है. यह हार्डवेयर और ऑपरेटिंग सिस्टम के कॉन्फ़िगरेशन पर निर्भर करता है. कुछ मामलों में और अपनी ज़रूरतों के हिसाब से, Message Processor पर इस्तेमाल किए जाने वाले Garbage Collector के टाइप को बदला जा सकता है.

G1GC, Java HotSpot VM के लिए, कम समय में काम करने वाला, सर्वर-स्टाइल जनरेशनल Garbage Collector है. इससे Message Processor की परफ़ॉर्मेंस बेहतर होती है. आम तौर पर, इसे ऐसे ऐप्लिकेशन के लिए डिज़ाइन किया जाता है जिनमें मीडियम से लेकर बड़े साइज़ के डेटा सेट होते हैं. इनमें कुल थ्रूपुट के मुकाबले, रिस्पॉन्स टाइम ज़्यादा अहम होता है. उदाहरण के लिए: अगर हीप का साइज़ बड़ा है (3 जीबी से ज़्यादा), तो G1GC का इस्तेमाल किया जा सकता है.

आम तौर पर, G1GC के साथ एक और JVM पैरामीटर UseStringDeduplicationalong सेट करने का सुझाव दिया जाता है. यह पैरामीटर, डुप्लीकेट या एक जैसी स्ट्रिंग वैल्यू को एक ही कैरेक्टर ऐरे शेयर करके, Java हीप मेमोरी के इस्तेमाल को ऑप्टिमाइज़ करता है.

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

Message Processors पर G1GC चालू करना

इस सेक्शन में, Edge Message Processor पर G1GC चालू करने का तरीका बताया गया है. Message Processor कॉम्पोनेंट पर मौजूद useG1GC प्रॉपर्टी की मदद से, G1GC को चालू किया जा सकता है. डिफ़ॉल्ट रूप से, यह प्रॉपर्टी Message Processors पर false पर सेट होती है. Message Processor पर किसी भी प्रॉपर्टी को कॉन्फ़िगर करने के लिए, Edge को कॉन्फ़िगर करने का तरीका लेख में बताए गए सिंटैक्स के मुताबिक टोकन का इस्तेमाल करें.

Message Processors पर G1GC चालू करने के लिए, यह तरीका अपनाएं:

  1. useG1GC प्रॉपर्टी के लिए टोकन ढूंढना
  2. Message Processor पर G1GC चालू करना

useG1GC प्रॉपर्टी के लिए टोकन ढूंढना

useG1GC प्रॉपर्टी के लिए टोकन ढूंढने का तरीका यहां बताया गया है:

  1. Message Processor की सोर्स डायरेक्ट्री /opt/apigee/edge-message-processor/source में, useG1GC प्रॉपर्टी खोजें. इसके लिए, यह कमांड इस्तेमाल करें:
    grep -ri "useG1GC" /opt/apigee/edge-message-processor/source
  2. इस कमांड के आउटपुट में, Message Processor की प्रॉपर्टी useG1GC के लिए टोकन इस तरह दिखता है:
    /opt/apigee/edge-message-processor/source/conf/system.properties:useG1GC={T}conf_system_useG1GC{/T}

    यहां {T}{/T} टैग के बीच की स्ट्रिंग, टोकन का नाम है. इसे Message Processor की .properties फ़ाइल में सेट किया जा सकता है. इसलिए, प्रॉपर्टी useG1GC के लिए टोकन इस तरह दिखता है:

    conf_system_useG1GC

Message Processors पर G1GC चालू करना

Apigee Message Processors पर G1GC चालू करने का तरीका यहां बताया गया है:

  1. Message Processor मशीन पर, /opt/apigee/customer/application/message-processor.properties फ़ाइल को किसी एडिटर में खोलें. अगर यह फ़ाइल पहले से मौजूद नहीं है, तो इसे बनाएं. उदाहरण के लिए:
    vi /opt/apigee/customer/application/message-processor.properties
  2. इस फ़ाइल में यह लाइन जोड़ें:
    conf_system_useG1GC=true
  3. बदलावों को सेव करें.
  4. पक्का करें कि इस प्रॉपर्टी वाली फ़ाइल का मालिकाना हक apigee उपयोगकर्ता के पास हो. उदाहरण के लिए:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  5. Message Processor को रीस्टार्ट करने के लिए, यह कमांड इस्तेमाल करें:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
  6. अगर आपके पास एक से ज़्यादा Message Processor हैं, तो सभी Message Processors के लिए यही तरीका अपनाएं.

Message Processors पर G1GC के कॉन्फ़िगरेशन की पुष्टि करना

इस सेक्शन में, यह पुष्टि करने का तरीका बताया गया है कि Message Processors पर G1GC का कॉन्फ़िगरेशन, सही तरीके से बदला गया है.

Message Processor पर G1GC चालू करने के लिए, भले ही conf_system_useG1GC टोकन का इस्तेमाल किया गया हो, लेकिन आपको यह पुष्टि करनी होगी कि असली प्रॉपर्टी useG1GC को नई वैल्यू के साथ सेट किया गया है. इसके लिए, यह तरीका अपनाएं:

  1. /opt/apigee/edge-message-processor/conf डायरेक्ट्री में, useG1GC प्रॉपर्टी खोजें और देखें कि इसे नई वैल्यू के साथ सेट किया गया है या नहीं. उदाहरण के लिए:
    grep -ri "useG1GC" /opt/apigee/edge-message-processor/conf
  2. अगर Message Processor पर G1GC सही तरीके से चालू किया गया है, तो पिछली कमांड system.properties फ़ाइल में नई वैल्यू दिखाएगी.

    Message Processor पर G1GC चालू करने के बाद, पिछली कमांड का सैंपल नतीजा यहां दिया गया है:

    /opt/apigee/edge-message-processor/conf/system.properties:useG1GC=true

    उदाहरण के तौर पर दिए गए आउटपुट में, ध्यान दें कि system.properties में, useG1GC प्रॉपर्टी को नई वैल्यू true के साथ सेट किया गया है. इससे पता चलता है कि Message Processor पर G1GC सही तरीके से चालू किया गया है.

  3. अगर आपको अब भी useG1GC प्रॉपर्टी के लिए पुरानी वैल्यू दिख रही है, तो पुष्टि करें कि आपने Message Processors पर G1GC चालू करना में बताए गए सभी चरणों को सही तरीके से पूरा किया है. अगर आपने कोई चरण छोड़ दिया है, तो सभी चरणों को फिर से सही तरीके से पूरा करें.
  4. अगर अब भी G1GC चालू नहीं हो रहा है, तो Apigee Edge की सहायता टीम से संपर्क करें.

इसके बाद क्या होगा?

Message Processors पर स्ट्रिंग डिडुप्लीकेशन की सुविधा चालू करना