Antipattern: กำหนด ProxyEndpoints หลายจุดในพร็อกซี API

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

การกำหนดค่า ProxyEndpoint จะกำหนดวิธีที่แอปของไคลเอ็นต์ใช้ API ผ่าน Apigee Edge โดย ProxyEndpoint จะกำหนด URL ของพร็อกซี API และลักษณะการทำงานของพร็อกซี เช่น นโยบายที่จะใช้ ปลายทางเป้าหมายที่จะกำหนดเส้นทาง และเงื่อนไขที่ต้องเป็นไปตามนโยบายหรือกฎเส้นทางเหล่านี้จึงจะทำงาน

กล่าวโดยย่อคือ การกำหนดค่า ProxyEndpoint จะกำหนดทุกสิ่งที่ต้องทำเพื่อใช้ API

รูปแบบที่ไม่แนะนำ

พร็อกซี API มีปลายทางพร็อกซีอย่างน้อย 1 รายการได้ การกำหนด ProxyEndpoint หลายรายการเป็นกลไกที่ง่ายและสะดวกในการใช้ API หลายรายการในพร็อกซีเดียว ซึ่งช่วยให้คุณนำนโยบายและ/หรือตรรกะทางธุรกิจกลับมาใช้ซ้ำได้ทั้งก่อนและหลังการเรียกใช้ TargetEndpoint

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

ผลกระทบ

ProxyEndpoint หลายรายการในพร็อกซี API อาจทำให้เกิดสิ่งต่อไปนี้

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

แนวทางปฏิบัติแนะนำ

เมื่อใช้พร็อกซี API ใหม่หรือออกแบบพร็อกซี API ที่มีอยู่ใหม่ ให้ใช้ แนวทางปฏิบัติแนะนำต่อไปนี้:

  1. ใช้พร็อกซี API 1 รายการที่มี ProxyEndpoint เดียว
  2. หากมี API หลายรายการที่แชร์เซิร์ฟเวอร์เป้าหมายร่วมกันและ/หรือต้องใช้ตรรกะเดียวกันก่อน หรือหลังการเรียกใช้เซิร์ฟเวอร์เป้าหมาย ให้พิจารณาใช้โฟลว์ที่แชร์เพื่อใช้ตรรกะดังกล่าวใน พร็อกซี API ต่างๆ
  3. หากมี API หลายรายการที่แชร์เส้นทางฐานเริ่มต้นร่วมกัน แต่มีคำต่อท้ายต่างกัน ใช้โฟลว์แบบมีเงื่อนไขใน ProxyEndpoint เดียว
  4. หากมีพร็อกซี API ที่มี ProxyEndpoint หลายรายการและไม่มีปัญหาใดๆ ก็ไม่จำเป็นต้องดำเนินการใดๆ

การใช้ ProxyEndpoint 1 รายการต่อพร็อกซี API จะทำให้เกิดสิ่งต่อไปนี้

  1. พร็อกซีที่ง่ายขึ้นและดูแลรักษาง่ายขึ้น
  2. ระบบจะรายงานข้อมูลที่ดีขึ้นในข้อมูลวิเคราะห์ เช่น ประสิทธิภาพของพร็อกซีและเวลาตอบสนองของเป้าหมาย แยกกันแทนที่จะรวมข้อมูลสำหรับ ProxyEndpoint ทั้งหมด
  3. การแก้ปัญหาและการแก้ไขปัญหาที่เร็วขึ้น

อ่านเพิ่มเติม