การเปิดใช้งานการกรองสตริงที่ซ้ํากันในโปรเซสเซอร์ข้อความ

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

เอกสารนี้อธิบายวิธีเปิดใช้การขจัดข้อมูลซ้ำของสตริงใน Message Processor ของ Apigee Edge

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

Apigee Edge Message Processor เป็นคอมโพเนนต์ที่ใช้ Java การใช้การขจัดข้อมูลซ้ำของสตริงใน Message Processor สามารถปรับปรุงประสิทธิภาพของพร็อกซี API ได้ด้วยการลดการใช้งานหน่วยความจำ โดยเฉพาะอย่างยิ่ง หากพร็อกซี API ใช้สตริงจำนวนมาก

ฟีเจอร์การขจัดข้อมูลซ้ำของสตริงใช้ได้กับ G1 Garbage Collector (G1GC) ในแอปพลิเคชัน Java เท่านั้น หากต้องการเปิดใช้ฟีเจอร์นี้ใน Message Processor คุณต้องเปิดใช้ G1GC ไว้แล้ว หรือเปิดใช้ทั้ง G1GC และการขจัดข้อมูลซ้ำของสตริงพร้อมกันใน Message Processor.

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

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

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

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

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

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

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

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

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

    conf_system_useStringDeduplication

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

ขั้นตอนต่อไปนี้จะอธิบายวิธีเปิดใช้การขจัดข้อมูลซ้ำของสตริงใน Apigee Message Processor

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

การยืนยันการขจัดข้อมูลซ้ำของสตริงใน Message Processor

ส่วนนี้จะอธิบายวิธียืนยันว่าการขจัดข้อมูลซ้ำของสตริงเปิดใช้ใน Message Processor สำเร็จแล้ว

แม้ว่าคุณจะใช้โทเค็น conf_system_useStringDeduplication เพื่อเปิดใช้การขจัดข้อมูลซ้ำของสตริงใน Message Processor แต่คุณต้องยืนยันว่าพร็อพเพอร์ตี้จริง useStringDeduplication ได้รับการตั้งค่าด้วยค่าใหม่ดังนี้

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

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

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

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

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

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

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