การเปิดใช้ G1GC ในตัวประมวลผลข้อความ

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

เอกสารนี้อธิบายวิธีเปิดใช้ Garbage First Garbage Collector (G1GC) ใน Message Processor ของ Apigee Edge

Message Processor ของ Apigee Edge ทำงานบน Java Virtual Machine (JVM) และใช้ Garbage Collector เริ่มต้น ซึ่งเป็นแบบอนุกรมหรือแบบขนาน ทั้งนี้ขึ้นอยู่กับการกำหนดค่าฮาร์ดแวร์และระบบปฏิบัติการ ในบางกรณีและตามความต้องการ คุณอาจต้องการเปลี่ยนประเภท Garbage Collector ที่ใช้ใน Message Processor

G1GC เป็นเครื่องมือเก็บหน่วยความจำแอปตามรุ่นสำหรับ Java HotSpot VM ที่หยุดชั่วคราวต่ำและมีสไตล์เซิร์ฟเวอร์ ซึ่งช่วยปรับปรุงประสิทธิภาพโดยรวมของ Message Processor โดยทั่วไปแล้ว G1GC ได้รับการออกแบบมาสำหรับ แอปพลิเคชันที่มีชุดข้อมูลขนาดกลางถึงขนาดใหญ่ ซึ่งเวลาตอบสนองมีความสำคัญมากกว่า ปริมาณงานโดยรวม เช่น คุณอาจพิจารณาใช้ G1GC หากขนาดฮีปมีขนาดใหญ่ (มากกว่า 3 GB)

โดยทั่วไปแล้ว เราขอแนะนำให้ตั้งค่าพารามิเตอร์ JVM อีกรายการหนึ่ง UseStringDeduplication พร้อมกับ G1GC พารามิเตอร์นี้จะเพิ่มประสิทธิภาพการใช้งานหน่วยความจำฮีปของ Java โดยทำให้ค่า String ที่ซ้ำกันหรือเหมือนกัน แชร์อาร์เรย์อักขระเดียวกัน

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

การเปิดใช้ G1GC ใน Message Processor

ส่วนนี้จะอธิบายวิธีเปิดใช้ G1GC ใน Edge Message Processor คุณเปิดใช้ G1GC ได้ ผ่านพร็อพเพอร์ตี้ useG1GC ในคอมโพเนนต์ Message Processor โดยค่าเริ่มต้น พร็อพเพอร์ตี้นี้ จะตั้งค่าเป็น false ใน Message Processor หากต้องการกำหนดค่าพร็อพเพอร์ตี้ใน Message Processor ให้ใช้โทเค็นตามไวยากรณ์ที่อธิบายไว้ใน วิธีกำหนดค่า Edge

หากต้องการเปิดใช้ G1GC ใน Message Processor ให้ทำตามขั้นตอนต่อไปนี้

  1. ค้นหาโทเค็นสำหรับพร็อพเพอร์ตี้ useG1GC
  2. เปิดใช้ G1GC ใน Message Processor

ค้นหาโทเค็นสำหรับพร็อพเพอร์ตี้ useG1GC

ขั้นตอนต่อไปนี้จะอธิบายวิธีค้นหาโทเค็นสำหรับพร็อพเพอร์ตี้ useG1GC

  1. ค้นหาพร็อพเพอร์ตี้ useG1GC ในไดเรกทอรีต้นทางของ Message Processor /opt/apigee/edge-message-processor/source โดยใช้คำสั่งต่อไปนี้
    grep -ri "useG1GC" /opt/apigee/edge-message-processor/source
  2. เอาต์พุตของคำสั่งนี้จะแสดงโทเค็นสำหรับพร็อพเพอร์ตี้ useG1GC ของ Message Processor ดังนี้
    /opt/apigee/edge-message-processor/source/conf/system.properties:useG1GC={T}conf_system_useG1GC{/T}

    โดยสตริงระหว่างแท็ก {T}{/T} คือชื่อโทเค็นที่คุณ ตั้งค่าในไฟล์ .properties ของ Message Processor ได้ ดังนั้น โทเค็นสำหรับ พร็อพเพอร์ตี้ useG1GC จึงมีลักษณะดังนี้

    conf_system_useG1GC

เปิดใช้ G1GC ใน Message Processor

ขั้นตอนต่อไปนี้จะอธิบายวิธีเปิดใช้ G1GC ใน Apigee Message Processor

  1. เปิดไฟล์ /opt/apigee/customer/application/message-processor.properties ในเครื่อง Message Processor ในโปรแกรมแก้ไข หากไฟล์ยังไม่มี ให้ สร้างไฟล์ เช่น
    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 มากกว่า 1 รายการ ให้ทำตามขั้นตอนเหล่านี้ซ้ำใน Message Processor ทั้งหมด

การยืนยันการกำหนดค่า G1GC ใน Message Processor

ส่วนนี้จะอธิบายวิธียืนยันว่าการกำหนดค่า G1GC ได้รับการแก้ไขใน Message Processor เรียบร้อยแล้ว

แม้ว่าคุณจะใช้โทเค็น conf_system_useG1GC เพื่อเปิดใช้ G1GC ใน Message Processor แต่คุณต้องยืนยันว่าพร็อพเพอร์ตี้ useG1GC จริงได้รับการตั้งค่าด้วย ค่าใหม่ดังนี้

  1. ค้นหาพร็อพเพอร์ตี้ useG1GC ในไดเรกทอรี /opt/apigee/edge-message-processor/conf และตรวจสอบว่าพร็อพเพอร์ตี้ได้รับการตั้งค่าด้วยค่าใหม่ เช่น
    grep -ri "useG1GC" /opt/apigee/edge-message-processor/conf
  2. หากเปิดใช้ G1GC ใน Message Processor สำเร็จ คำสั่งก่อนหน้าจะแสดง ค่าใหม่ในไฟล์ system.properties

    ตัวอย่างผลลัพธ์จากคำสั่งก่อนหน้าหลังจากที่คุณเปิดใช้ G1GC ใน Message Processor มีดังนี้

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

    ในเอาต์พุตตัวอย่าง ให้สังเกตว่าพร็อพเพอร์ตี้ useG1GC ได้รับการตั้งค่าด้วยค่าใหม่ true ใน system.properties ซึ่งบ่งชี้ว่า G1GC เปิดใช้ใน Message Processor สำเร็จแล้ว

  3. หากยังเห็นค่าเก่าสำหรับพร็อพเพอร์ตี้ useG1GC ให้ตรวจสอบว่าคุณได้ทำตามขั้นตอนทั้งหมดที่ระบุไว้ในการเปิดใช้ G1GC ใน Message Processor อย่างถูกต้อง หาก ข้ามขั้นตอนใดไป ให้ทำตามขั้นตอนทั้งหมดอีกครั้งอย่างถูกต้อง
  4. หากยังเปิดใช้ G1GC ไม่ได้ โปรดติดต่อ ทีมสนับสนุนของ Apigee Edge

สิ่งที่ควรทำถัดไป

การเปิดใช้การหักล้างข้อมูลสตริงใน Message Processor