Java मेमोरी सेटिंग में बदलाव करना

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

इस सेक्शन में, डिफ़ॉल्ट और सुझाए गए Java हीप मेमोरी साइज़ के बारे में जानकारी दी गई है को डिफ़ॉल्ट बदलने की प्रक्रिया के तौर पर इस्तेमाल किया जा सकता है. आखिर में, इस सेक्शन में बताया गया है कि प्रॉपर्टी फ़ाइलों का इस्तेमाल करने वाली JVM सेटिंग.

हीप मेमोरी के डिफ़ॉल्ट और सुझाए गए साइज़

नीचे दी गई टेबल में, Java पर आधारित Java हीप मेमोरी साइज़ के डिफ़ॉल्ट और सुझाए गए साइज़ की सूची दी गई है प्राइवेट क्लाउड कॉम्पोनेंट:

कॉम्पोनेंट प्रॉपर्टी फ़ाइल का नाम डिफ़ॉल्ट
हीप साइज़
सुझाया गया
हीप साइज़
रनटाइम
कास्सांद्रा लागू नहीं अपने-आप कॉन्फ़िगर होने की सुविधा1 अपने-आप कॉन्फ़िगर होने की सुविधा1
मैसेज प्रोसेसर message‑processor.properties 512 एमबी 3 जीबी - 6 जीबी2
राऊटर router.properties 512 एमबी 512 एमबी
Analytics
Postgres सर्वर postgres‑server.properties 512 एमबी 512 एमबी
Qpid सर्वर qpid‑server.properties 512 एमबी 2 जीबी - 4 जीबी
मैनेजमेंट
मैनेजमेंट सर्वर management‑server.properties 512 एमबी 512 एमबी
यूज़र इंटरफ़ेस (यूआई) ui.properties 512 एमबी 512 एमबी
OpenLDAP लागू नहीं खास ऐप्लिकेशन3 खास ऐप्लिकेशन3
ज़ूकीपर zookeeper.properties 2048 एमबी 2048 एमबी
नोट

1 Cassandra, शुरू होने पर डाइनैमिक तरीके से हेप के ज़्यादा से ज़्यादा साइज़ का हिसाब लगाता है. फ़िलहाल, यह सिस्टम मेमोरी का आधा है. इसे ज़्यादा से ज़्यादा 8,192 एमबी. हीप का साइज़ सेट करने के बारे में जानकारी के लिए, हीप बदलना देखें मेमोरी साइज़ के लिए भी तय किया जा सकता है.

2 मैसेज प्रोसेसर के लिए, Apigee का सुझाव है कि आप हीप सेट करें साइज़ 3 जीबी से 6 जीबी के बीच होना चाहिए. प्रोसेस करने के बाद ही, हीप का साइज़ छह जीबी से ज़्यादा बढ़ाएं परफ़ॉर्मेंस की जांच की जा सकती है.

अगर परफ़ॉर्मेंस की जांच के दौरान, हेप का इस्तेमाल तय सीमा के करीब पहुंच जाता है, तो तय सीमा को बढ़ाएं. ढेर का साइज़ सेट करने के बारे में जानने के लिए, ढेर की मेमोरी का साइज़ बदलना लेख पढ़ें.

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

यह पता लगाने के लिए कि Apigee, आपको अपने Java-आधारित स्टोरेज के लिए कुल कितनी मेमोरी असाइन करती है किसी नोड में कॉम्पोनेंट जोड़ने के लिए, उस नोड पर हर कॉम्पोनेंट के लिए ऊपर दी गई वैल्यू जोड़ें. उदाहरण के लिए, अगर आपके नोड में Postgres और Qpid, दोनों सर्वर होस्ट किए जाते हैं, तो Apigee का सुझाव है कि आपके नोड के लिए कुल मेमोरी का ऐलोकेशन 2.5 जीबी से 4.5 जीबी के बीच होना चाहिए.

आवश्यक हार्डवेयर (जैसे कि रैम) की सूची के लिए, देखें इंस्टॉल करने से जुड़ी ज़रूरी शर्तें.

हीप मेमोरी के साइज़ बदलना

हीप मेमोरी की सेटिंग बदलने के लिए, कॉम्पोनेंट की प्रॉपर्टी फ़ाइल में बदलाव करें. उदाहरण के लिए, तो /opt/apigee/customer/application/message-processor.properties फ़ाइल.

अगर message-processor.properties फ़ाइल मौजूद नहीं है या अगर किसी Edge कॉम्पोनेंट के लिए संबंधित .properties फ़ाइल है मौजूद नहीं है, तो इसे बनाएं और फिर फ़ाइल के स्वामित्व को "apigee" में बदलें उपयोगकर्ता से मिलता है, जैसा कि नीचे बताया गया है उदाहरण में यह दिखाया गया है:

chown apigee:apigee /opt/apigee/customer/application/message-processor.properties

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

नीचे दी गई टेबल में उन प्रॉपर्टी की सूची दी गई है जिनमें हीप के साइज़ में बदलाव करने के लिए बदलाव किए जाते हैं:

प्रॉपर्टी ब्यौरा
bin_setenv_min_mem

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

यह सेटिंग Java -Xms विकल्प के हिसाब से है.

bin_setenv_max_mem

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

यह सेटिंग, Java -Xmx विकल्प से जुड़ी होती है.

bin_setenv_meta_space_size

क्लास के मेटाडेटा का डिफ़ॉल्ट साइज़. डिफ़ॉल्ट वैल्यू, bin_setenv_max_permsize की वैल्यू पर सेट होती है. यह वैल्यू डिफ़ॉल्ट रूप से 128 एमबी होती है. मैसेज प्रोसेसर पर, Apigee का सुझाव है कि आप इस वैल्यू को 256 एमबी या 512 एमबी पर सेट करें. यह वैल्यू, आपके ट्रैफ़िक के हिसाब से तय की जानी चाहिए.

यह सेटिंग Java -XX:MetaspaceSize विकल्प के हिसाब से है.

जब किसी नोड में हीप साइज़ की प्रॉपर्टी सेट करनी हो, तो "m" का इस्तेमाल करें प्रत्यय, जैसा कि नीचे दिया गया उदाहरण दिखाता है:

bin_setenv_min_mem=4500m
bin_setenv_max_mem=4500m
bin_setenv_meta_space_size=1024m

प्रॉपर्टी फ़ाइल में वैल्यू सेट करने के बाद, कॉम्पोनेंट को रीस्टार्ट करें:

/opt/apigee/apigee-service/bin/apigee-service component restart

उदाहरण के लिए:

/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

अन्य JVM प्रॉपर्टी बदलें

उन Java सेटिंग के लिए जिन्हें ऊपर दी गई प्रॉपर्टी से नियंत्रित नहीं किया जाता है, आप नीचे दिए गए निर्देश का पालन करने के लिए:

  • bin_setenv_ext_jvm_opts: कोई भी Java सेट करें प्रॉपर्टी जिसे दूसरी प्रॉपर्टी ने तय नहीं किया है. जैसे:
    bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500

    हालाँकि, इन कामों के लिए bin_setenv_ext_jvm_opts का इस्तेमाल न करें -Xms, -Xmx या -XX:MetaspaceSize को इस तरह सेट करें कि ये वैल्यू इस तरह से दी गई हों ऊपर बताई गई प्रॉपर्टी से कंट्रोल होता है.

प्राइवेट क्लाउड कॉम्पोनेंट के लिए मेमोरी कॉन्फ़िगर करने के बारे में ज़्यादा सलाह पाने के लिए, यहां देखें यह लेख पढ़ें.