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

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

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

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

รูปแบบที่ไม่ถูกต้อง

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

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

ผลกระทบ

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

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

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

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

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

การใช้ ProxyEndpoint 1 รายการต่อพร็อกซี API จะทําให้ผลลัพธ์ดังนี้

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

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