การกําหนดค่าขนาดหน่วยความจําฮีปในเซิร์ฟเวอร์ Qpid

คุณกำลังดูเอกสาร Apigee Edge
ไปที่เอกสารประกอบของ Apigee X
ข้อมูล

เซิร์ฟเวอร์ Qpid ของ Apigee Edge เป็นคอมโพเนนต์ที่ใช้ Java และใช้ขนาดหน่วยความจำฮีปเริ่มต้นที่ 512 MB อย่างไรก็ตาม ขนาดหน่วยความจำฮีปเริ่มต้นอาจไม่เพียงพอสำหรับกรณีการใช้งานทั้งหมดใน Apigee Edge คุณอาจต้องปรับแต่งขนาดหน่วยความจำฮีปสำหรับเซิร์ฟเวอร์ Qpid โดยขึ้นอยู่กับข้อกำหนดด้านการรับส่งข้อมูลและการประมวลผล หรือเพื่อจัดการปัญหาเกี่ยวกับหน่วยความจำ

ขนาดหน่วยความจำฮีปของแอปพลิเคชัน Java จะควบคุมผ่านพารามิเตอร์บรรทัดคำสั่งของ Java -Xms (ขนาดฮีปขั้นต่ำ) และ -Xmx (ขนาดฮีปสูงสุด) ในเซิร์ฟเวอร์ Apigee Edge Qpid เหล่านี้จะควบคุมผ่านพร็อพเพอร์ตี้ bin_setenv_min_mem และ bin_setenv_max_mem อ่านข้อมูลเพิ่มเติมเกี่ยวกับพร็อพเพอร์ตี้เหล่านี้ได้ใน การแก้ไขการตั้งค่าหน่วยความจำของ Java

เอกสารนี้จะอธิบายวิธีกำหนดค่าขนาดหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid ของ Apigee Edge

ก่อนเริ่มต้น

การเปลี่ยนหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid

หัวข้อนี้จะอธิบายวิธีเปลี่ยนขนาดหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid กำหนดค่าหน่วยความจำฮีปขั้นต่ำและสูงสุดได้ผ่านพร็อพเพอร์ตี้ bin_setenv_min_mem และ bin_setenv_max_mem ในคอมโพเนนต์เซิร์ฟเวอร์ Qpid

หากต้องการเปลี่ยนขนาดหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid ให้ทำตามขั้นตอนต่อไปนี้

  1. เปิดไฟล์ /opt/apigee/customer/application/qpid-server.properties ในเครื่องเซิร์ฟเวอร์ Qpid ในตัวแก้ไข หากยังไม่มีไฟล์ดังกล่าว ให้สร้างขึ้นมา ตัวอย่างเช่น
    vi /opt/apigee/customer/application/qpid-server.properties
    
  2. เพิ่มบรรทัดต่อไปนี้ในไฟล์นี้
  3. bin_setenv_min_mem=minimum_heap_in_megabytes
    bin_setenv_max_mem=maximum_heap_in_megabytes
    

    ตัวอย่างเช่น หากต้องการเปลี่ยนฮีปต่ำสุดและสูงสุดในเซิร์ฟเวอร์ Qpid เป็น 1 GB และ 2 GB ตามลำดับ ให้เพิ่มบรรทัดต่อไปนี้ลงในไฟล์นี้

    bin_setenv_min_mem=1024m
    bin_setenv_max_mem=2048m
    
  4. บันทึกการเปลี่ยนแปลง
  5. ตรวจสอบว่าไฟล์พร็อพเพอร์ตี้นี้เป็นของผู้ใช้ apigee ตัวอย่างเช่น
    chown apigee:apigee /opt/apigee/customer/application/qpid-server.properties
    
  6. รีสตาร์ทเซิร์ฟเวอร์ Qpid โดยใช้คำสั่งต่อไปนี้
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
    
  7. หากคุณมีเซิร์ฟเวอร์ Qpid มากกว่า 1 เครื่อง ให้ทำตามขั้นตอนเหล่านี้ซ้ำในเซิร์ฟเวอร์ Qpid ทั้งหมด

กำลังยืนยันการกำหนดค่าหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid

ส่วนนี้จะอธิบายวิธีตรวจสอบว่าการแก้ไขการเปลี่ยนแปลงหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid สำเร็จหรือไม่

แม้ว่าจะใช้พร็อพเพอร์ตี้ bin_setenv_min_mem และ bin_setenv_max_mem เพื่อเปลี่ยนขนาดหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid แล้ว แต่คุณต้องยืนยันว่าพารามิเตอร์บรรทัดคำสั่ง Java จริง -Xms และ -Xmx ได้รับการตั้งค่าใหม่ดังนี้

  1. ค้นหาเพื่อดูว่าพารามิเตอร์บรรทัดคำสั่ง -Xms และ -Xmx ได้รับการตั้งค่าด้วยค่าใหม่สำหรับเซิร์ฟเวอร์ Qpid โดยใช้คำสั่งต่อไปนี้หรือไม่
    ps -ef | grep qpid-server | egrep -o 'Xms[0-9a-z]+|Xmx[0-9a-z]+' | tr '\r' ' '
    
  2. หากหน่วยความจำฮีปต่ำสุดและสูงสุดมีการเปลี่ยนแปลงในเซิร์ฟเวอร์ Qpid คำสั่งก่อนหน้าจะแสดงค่าใหม่ที่ระบุไว้สำหรับ -Xms และ -Xmx.

    ผลลัพธ์ตัวอย่างจากคำสั่งก่อนหน้าหลังจากที่คุณเปลี่ยนฮีปต่ำสุดและสูงสุดในเซิร์ฟเวอร์ Qpid จะเป็นดังนี้

    Xms1024m
    Xmx2048m
    

    ในเอาต์พุตตัวอย่าง โปรดทราบว่ามีการตั้งค่าใหม่สำหรับฮีปต่ำสุดและสูงสุดแล้ว

  3. หากยังเห็นค่าเดิมสำหรับ -Xms และ -Xmx ให้ตรวจสอบว่าคุณได้ทำตามขั้นตอนทั้งหมดที่ระบุไว้ใน การเปลี่ยนขนาดหน่วยความจำฮีปในเซิร์ฟเวอร์ Qpid อย่างถูกต้อง หากคุณพลาดขั้นตอนใด ให้ทำซ้ำขั้นตอนทั้งหมดอย่างถูกต้องอีกครั้ง
  4. หากคุณยังเปลี่ยนหน่วยความจำฮีปไม่ได้ โปรดติดต่อทีมสนับสนุนของ Apigee

ขั้นตอนถัดไปคือ

การกำหนดค่าขนาดหน่วยความจำฮีปในตัวประมวลผลข้อความ