ट्रैफ़िक और प्रोसेसिंग की ज़रूरतों के हिसाब से, आपको Java पर आधारित Private Cloud कॉम्पोनेंट चलाने वाले नोड के लिए, हीप मेमोरी का साइज़ या क्लास मेटाडेटा का साइज़ बदलना पड़ सकता है.
इस सेक्शन में, Java हीप मेमोरी के डिफ़ॉल्ट और सुझाए गए साइज़ के बारे में बताया गया है. साथ ही, डिफ़ॉल्ट साइज़ बदलने की प्रोसेस के बारे में भी बताया गया है. आखिर में, इस सेक्शन में बताया गया है कि प्रॉपर्टी फ़ाइलों का इस्तेमाल करके, अन्य JVM सेटिंग कैसे बदली जाती हैं.
डिफ़ॉल्ट और सुझाई गई हीप मेमोरी के साइज़
यहां दी गई टेबल में, Java पर आधारित Private Cloud कॉम्पोनेंट के लिए, Java हीप मेमोरी के डिफ़ॉल्ट और सुझाई गई साइज़ की जानकारी दी गई है:
कॉम्पोनेंट | प्रॉपर्टी फ़ाइल का नाम | डिफ़ॉल्ट हीप साइज़ |
सुझाया गया हीप साइज़ |
---|---|---|---|
रनटाइम | |||
Cassandra | लागू नहीं | अपने-आप कॉन्फ़िगर किया गया1 | अपने-आप कॉन्फ़िगर किया गया1 |
मैसेज प्रोसेसर | message‑processor.properties |
512MB | 3 जीबी - 6 जीबी2 |
राऊटर | router.properties |
512MB | 512MB |
Analytics | |||
Postgres सर्वर | postgres‑server.properties |
512MB | 512MB |
Qpid सर्वर | qpid‑server.properties |
512MB | 2 जीबी - 4 जीबी |
मैनेजमेंट | |||
मैनेजमेंट सर्वर | management‑server.properties |
512MB | 512MB |
यूज़र इंटरफ़ेस (यूआई) | ui.properties |
512MB | 512MB |
SymasLDAP | लागू नहीं | नेटिव ऐप्लिकेशन3 | नेटिव ऐप्लिकेशन3 |
चिड़ियाघर में जानवरों की देखभाल करने वाला | zookeeper.properties |
2048MB | 2048MB |
नोट | |||
1 Cassandra, शुरू होने पर ज़्यादा से ज़्यादा हीप साइज़ का हिसाब डाइनैमिक तरीके से लगाता है. फ़िलहाल, यह सिस्टम की कुल मेमोरी का आधा है. इसकी ज़्यादा से ज़्यादा सीमा 8192MB है. ढेर का साइज़ सेट करने के बारे में जानकारी के लिए, ढेर की मेमोरी का साइज़ बदलना लेख पढ़ें. |
|||
2 Apigee का सुझाव है कि मैसेज प्रोसेसर के लिए, हीप साइज़ को 3 जीबी से 6 जीबी के बीच सेट करें. परफ़ॉर्मेंस की जांच करने के बाद ही, हीप साइज़ को 6 जीबी से ज़्यादा बढ़ाएं.
अगर परफ़ॉर्मेंस की जांच के दौरान, हीप का इस्तेमाल ज़्यादा से ज़्यादा सीमा के आस-पास पहुंच जाता है, तो ज़्यादा से ज़्यादा सीमा को बढ़ाएं. ढेर का साइज़ सेट करने के बारे में जानकारी के लिए, ढेर की मेमोरी का साइज़ बदलना लेख पढ़ें. |
|||
3 Private Cloud के सभी कॉम्पोनेंट, 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 |
bin_setenv_max_mem |
ढेर का ज़्यादा से ज़्यादा साइज़. डिफ़ॉल्ट वैल्यू, डिफ़ॉल्ट और सुझाई गई हीप मेमोरी साइज़ में दी गई वैल्यू के आधार पर तय की जाती है. यह सेटिंग, Java |
bin_setenv_meta_space_size |
क्लास के मेटाडेटा का डिफ़ॉल्ट साइज़. डिफ़ॉल्ट वैल्यू, यह सेटिंग, Java |
किसी नोड पर हीप साइज़ प्रॉपर्टी सेट करते समय, मेगाबाइट दिखाने के लिए "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 सेटिंग के लिए, Edge के किसी भी कॉम्पोनेंट की प्रॉपर्टी फ़ाइल में ये सेटिंग भी सेट की जा सकती हैं:
bin_setenv_ext_jvm_opts
: ऐसी कोई भी Java प्रॉपर्टी सेट करें जिसे अन्य प्रॉपर्टी से तय नहीं किया गया है. उदाहरण के लिए:bin_setenv_ext_jvm_opts=-XX:MaxGCPauseMillis=500
हालांकि,
bin_setenv_ext_jvm_opts
का इस्तेमाल करके-Xms
,-Xmx
या-XX:MetaspaceSize
को सेट न करें, क्योंकि इन वैल्यू को ऊपर दी गई प्रॉपर्टी कंट्रोल करती हैं.
Private Cloud कॉम्पोनेंट के लिए मेमोरी कॉन्फ़िगर करने के बारे में ज़्यादा सुझाव पाने के लिए, Edge फ़ोरम पर यह लेख पढ़ें.