คุณอาจต้องเปลี่ยนขนาดของหน่วยความจำฮีปหรือขนาดข้อมูลเมตาของคลาสสำหรับโหนดที่เรียกใช้คอมโพเนนต์ Private Cloud แบบ Java ทั้งนี้ขึ้นอยู่กับข้อกำหนดด้านการรับส่งข้อมูลและการประมวลผล
ส่วนนี้จะระบุขนาดหน่วยความจำฮีปของ Java เริ่มต้นและที่แนะนำ รวมถึงกระบวนการเปลี่ยนค่าเริ่มต้น สุดท้ายนี้ ส่วนนี้จะอธิบายวิธีเปลี่ยนการตั้งค่า JVM อื่นๆ โดยใช้ไฟล์พร็อพเพอร์ตี้
ขนาดหน่วยความจำฮีปเริ่มต้นและที่แนะนำ
ตารางต่อไปนี้แสดงขนาดหน่วยความจำฮีปของ Java เริ่มต้นและที่แนะนำสำหรับคอมโพเนนต์ Private Cloud ที่ใช้ Java
ส่วนประกอบ | ชื่อไฟล์ Properties | ค่าเริ่มต้น ขนาดฮีป |
แนะนำ ขนาดฮีป |
---|---|---|---|
รันไทม์ | |||
Cassandra | ไม่มี | กำหนดค่าโดยอัตโนมัติ1 | กำหนดค่าโดยอัตโนมัติ1 |
Message Processor | message‑processor.properties |
512MB | 3GB - 6GB2 |
เราเตอร์ | router.properties |
512MB | 512MB |
Analytics | |||
เซิร์ฟเวอร์ Postgres | postgres‑server.properties |
512MB | 512MB |
เซิร์ฟเวอร์ Qpid | qpid‑server.properties |
512MB | 2GB - 4GB |
การจัดการ | |||
เซิร์ฟเวอร์การจัดการ | management‑server.properties |
512MB | 512MB |
UI | ui.properties |
512MB | 512MB |
OpenLDAP | ไม่มี | แอปที่มาพร้อมเครื่อง3 | แอปที่มาพร้อมเครื่อง3 |
ผู้ดูแลสวนสัตว์ | zookeeper.properties |
2048MB | 2048MB |
Notes | |||
1 Cassandra จะคำนวณขนาดฮีปสูงสุดแบบไดนามิกเมื่อเริ่มทำงาน ปัจจุบันนี้มีขนาดครึ่งหนึ่งของหน่วยความจำระบบทั้งหมด โดยมีขนาดไม่เกิน 8192 MB ดูข้อมูลเกี่ยวกับการตั้งค่าขนาดฮีปได้ที่เปลี่ยนขนาดหน่วยความจำฮีป |
|||
2 สำหรับตัวประมวลผลข้อความ Apigee แนะนำให้ตั้งค่าขนาดฮีประหว่าง 3 GB ถึง 6 GB เพิ่มขนาดฮีปให้มากกว่า 6 GB หลังทำการทดสอบประสิทธิภาพแล้วเท่านั้น
หากการใช้งานฮีปใกล้ถึงขีดจำกัดสูงสุดในระหว่างการทดสอบประสิทธิภาพ ให้เพิ่มขีดจำกัดสูงสุด ดูข้อมูลเกี่ยวกับการตั้งค่าขนาดฮีปได้ที่เปลี่ยนขนาดหน่วยความจำฮีป |
|||
3 คอมโพเนนต์ Private Cloud บางอย่างเท่านั้นที่มีการใช้งานใน Java เนื่องจากแอปดังกล่าวไม่ได้ใช้ Java แอปที่เรียกใช้บนแพลตฟอร์มโฮสต์ดั้งเดิมจึงไม่มีขนาดฮีปของ Java ที่กำหนดค่าได้ แต่จะอาศัยระบบโฮสต์สำหรับการจัดการหน่วยความจำแทน |
หากต้องการกำหนดจำนวนหน่วยความจำทั้งหมดที่ Apigee จะแนะนำให้คุณจัดสรรให้คอมโพเนนต์ที่ใช้ Java ในโหนด ให้เพิ่มค่าที่ระบุไว้ด้านบนสำหรับแต่ละคอมโพเนนต์ในโหนดนั้น ตัวอย่างเช่น หากโหนดของคุณโฮสต์ทั้งเซิร์ฟเวอร์ Postgres และ Qpid Apigee แนะนำให้จัดสรรหน่วยความจำรวมระหว่าง 2.5 GB ถึง 4.5 GB
ดูรายการฮาร์ดแวร์ที่จำเป็น (เช่น RAM) ได้ที่ข้อกำหนดการติดตั้ง
เปลี่ยนขนาดหน่วยความจำฮีป
หากต้องการเปลี่ยนการตั้งค่าหน่วยความจำฮีป ให้แก้ไขไฟล์คุณสมบัติของคอมโพเนนต์ ตัวอย่างเช่น สำหรับโปรแกรมประมวลผลข้อความ ให้แก้ไขไฟล์ /opt/apigee/customer/application/message-processor.properties
หากไม่มีไฟล์ message-processor.properties
หรือหากไม่มีไฟล์ .properties
ที่เกี่ยวข้องสำหรับคอมโพเนนต์ Edge ใดๆ ให้สร้างแล้วเปลี่ยนการเป็นเจ้าของไฟล์เป็นผู้ใช้ "apigee" ตามตัวอย่างต่อไปนี้
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
หากมีการติดตั้งคอมโพเนนต์ในหลายเครื่อง เช่น โปรแกรมประมวลผลข้อความ คุณต้องแก้ไขไฟล์พร็อพเพอร์ตี้ในเครื่องทั้งหมดที่โฮสต์คอมโพเนนต์ดังกล่าว
ตารางต่อไปนี้แสดงรายการคุณสมบัติที่คุณแก้ไขเพื่อเปลี่ยนขนาดฮีป
พร็อพเพอร์ตี้ | คำอธิบาย |
---|---|
bin_setenv_min_mem |
ขนาดฮีปต่ำสุด ค่าเริ่มต้นคือค่าที่ระบุไว้ในขนาดหน่วยความจำฮีปเริ่มต้นและที่แนะนำ การตั้งค่านี้เป็นไปตามตัวเลือก |
bin_setenv_max_mem |
ขนาดฮีปสูงสุด ค่าเริ่มต้นคือค่าที่ระบุไว้ในขนาดหน่วยความจำฮีปเริ่มต้นและที่แนะนำ การตั้งค่านี้เป็นไปตามตัวเลือก |
bin_setenv_meta_space_size |
ขนาดข้อมูลเมตาเริ่มต้นของคลาส ค่าเริ่มต้นคือ การตั้งค่านี้เป็นไปตามตัวเลือก |
เมื่อคุณตั้งค่าพร็อพเพอร์ตี้ขนาดฮีปในโหนด ให้ใช้คำต่อท้าย "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