การกําหนดค่าเราเตอร์เพื่อลองเชื่อมต่อกับตัวประมวลผลข้อความอีกครั้ง

Edge for Private Cloud เวอร์ชัน 4.17.05

การกำหนดค่าการตอบสนองของเราเตอร์เมื่อ Message Processor ไม่พร้อมใช้งานระหว่างการตรวจสอบประสิทธิภาพ

เราเตอร์จะตรวจสอบสถานะของ Message Processor ทุกๆ 5 วินาทีเพื่อพิจารณาว่า Message Processor สามารถให้บริการคำขอได้หรือไม่ หาก Message Processor หยุดทำงาน เราเตอร์จะส่งต่อคำขอไปยัง Message Processor อื่นโดยอัตโนมัติ

คุณสามารถกำหนดค่าวิธีที่เราเตอร์ตอบสนองเมื่อ Message Processor หยุดทำงานได้โดยการตั้งค่าพร็อพเพอร์ตี้ conf_load_balancing_load.balancing.driver.nginx.server.retry ในเราเตอร์ พร็อพเพอร์ตี้นั้นใช้ชุดค่าที่คั่นด้วยเว้นวรรค ซึ่งอาจรวมถึงค่าต่อไปนี้

  • off: ปิดใช้การลองใหม่ โดยเราเตอร์จะแสดงรหัสข้อผิดพลาดเมื่อมีคำขอ
  • http_599: (ค่าเริ่มต้น) หากเราเตอร์ได้รับการตอบกลับ HTTP 599 จาก Message Processor เราเตอร์จะส่งต่อคำขอไปยัง Message Processor ถัดไป

    HTTP 599 เป็นโค้ดตอบกลับพิเศษที่สร้างขึ้นโดย Message Processor เมื่อปิดระบบ Message Processor จะพยายามดำเนินการตามคำขอที่มีอยู่ทั้งหมดให้เสร็จสมบูรณ์ แต่สำหรับคำขอใหม่จะตอบกลับด้วย HTTP 599 เพื่อส่งสัญญาณไปยังเราเตอร์ให้ลองส่งคำขออีกครั้งใน Message Processor ถัดไป
  • error: หากเกิดข้อผิดพลาดขณะสร้างการเชื่อมต่อกับ Message Processor, ส่งคำขอไปยัง Message Processor หรืออ่านส่วนหัวการตอบกลับจาก Message Processor เราเตอร์จะส่งต่อคำขอไปยัง Message Processor ถัดไป
  • timeout: หากเกิดการหมดเวลาขณะสร้างการเชื่อมต่อกับ Message Processor, ส่งคำขอไปยัง Message Processor หรืออ่านส่วนหัวการตอบกลับจาก Message Processor เราเตอร์จะส่งต่อคำขอไปยัง Message Processor ถัดไป
  • invalid_header: หาก Message Processor แสดงผลการตอบกลับที่ว่างเปล่าหรือไม่ถูกต้อง เราเตอร์จะส่งต่อคำขอไปยัง Message Processor ถัดไป
  • http_XXX: หาก Message Processor แสดงผลการตอบกลับพร้อมรหัส HTTP XXX เราเตอร์จะส่งต่อคำขอไปยัง Message Processor ถัดไป

วิธีกำหนดค่าเราเตอร์

  1. แก้ไขไฟล์ /opt/apigee/customer/application/router.properties (หากไม่มีไฟล์ ให้สร้างขึ้น)
  2. เพิ่มพร็อพเพอร์ตี้ conf_load_balancing_load.balancing.driver.nginx.server.retry ดังที่แสดงด้านล่าง
    conf_load_balancing_load.balancing.driver.nginx.server.retry=http_599 error
  3. ตรวจสอบว่าไฟล์พร็อพเพอร์ตี้เป็นของผู้ใช้ "apigee"
    > chown apigee:apigee /opt/apigee/customer/application/router.properties
  4. รีสตาร์ทเราเตอร์:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart

การกำหนดค่าระยะหมดเวลาของเราเตอร์เมื่อเข้าถึง Message Processor เป็นส่วนหนึ่งของคำขอพร็อกซี API

Edge Router มีการหมดเวลาที่กำหนดล่วงหน้าไว้ที่ 57 วินาทีเมื่อพยายามเข้าถึง Message Processor ซึ่งเป็นส่วนหนึ่งของการจัดการคำขอผ่านพร็อกซี API เมื่อหมดเวลาดังกล่าว เราเตอร์จะพยายามเชื่อมต่อกับ Message Processor อื่น หากมี ไม่เช่นนั้น ระบบจะแสดงข้อผิดพลาด

คุณใช้พร็อพเพอร์ตี้ 2 รายการเพื่อควบคุมการหมดเวลานี้ได้ ดังนี้

  • conf_load_balancing_load.balancing.driver.proxy.read.timeout ระบุเวลารอเป็นวินาทีสำหรับ Message Processor รายการเดียว ค่าเริ่มต้นคือ 57 วินาที
  • conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout ระบุเวลารอทั้งหมดสำหรับ Message Processor ทั้งหมดเป็นวินาที เมื่อการติดตั้ง Edge มี Message Processor หลายรายการ โดยมีค่าเริ่มต้นเป็นค่าปัจจุบันของ conf_load_balancing_load.balancing.driver.proxy.read.timeout หรือ 57 วินาที

วิธีกำหนดค่าเราเตอร์

  1. แก้ไขไฟล์ /opt/apigee/customer/application/router.properties (หากไม่มีไฟล์ ให้สร้างขึ้น)
  2. ตั้งค่าพร็อพเพอร์ตี้ตามที่แสดงด้านล่าง
    conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
    conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout=240
  3. ตรวจสอบว่าไฟล์พร็อพเพอร์ตี้เป็นของผู้ใช้ "apigee"
    > chown apigee:apigee /opt/apigee/customer/application/router.properties
  4. รีสตาร์ทเราเตอร์:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart