ปลายทางแบบซิงโครนัสและแบบอะซิงโครนัส

นักพัฒนาแอปในเขตเศรษฐกิจยุโรป (EEA)

Route Optimization API มี 2 วิธีดังนี้

  • OptimizeTours เป็นเมธอดซิงโครนัสที่แสดงผลเส้นทางที่เพิ่มประสิทธิภาพแล้วใน การตอบกลับ OptimizeToursRequest ไคลเอ็นต์ต้องรักษาการเชื่อมต่อที่เปิดอยู่กับ Route Optimization API จนกว่าจะมีการประมวลผลคำขอและส่งคืน OptimizeToursResponse หรือข้อผิดพลาด
  • BatchOptimizeTours เป็นเมธอดแบบอะซิงโครนัสที่ยอมรับ URI สำหรับ OptimizeToursRequest อย่างน้อย 1 รายการและข้อความ OptimizeToursResponse ที่เกี่ยวข้อง โดยจะแสดงชื่อทรัพยากรของการดำเนินการที่ใช้เวลานาน (LRO) (REST, gRPC) ที่ใช้เพื่อตรวจสอบการดำเนินการแบบกลุ่มให้เสร็จสมบูรณ์ ระบบจะประมวลผล OptimizeToursRequest ในเบื้องหลัง ดังนั้นไคลเอ็นต์จึงรักษา การเชื่อมต่อที่เปิดอยู่กับ Route Optimization API เพียงนานพอที่จะส่ง BatchOptimizeToursRequest หรือเรียกใช้ GetOperation เพื่อตรวจสอบสถานะ LRO BatchOptimizeToursอ่านคำขอและเขียนการตอบกลับไปยัง Google Cloud Storage

กรณีการใช้งาน

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

BatchOptimizeTours สามารถจัดการคำขอขนาดใหญ่และคำขอที่ใช้เวลานานกว่าในการแก้ปัญหา เนื่องจากไม่จำเป็นต้องมีการเชื่อมต่อที่ใช้งานได้นานกับ Route Optimization API

การดำเนินการที่ใช้เวลานาน

ระบบจะอ่าน LRO จาก Route Optimization API โดยใช้เมธอด GetOperation เพื่อ ตรวจสอบสถานะการดำเนินการของกลุ่ม LRO มีพร็อพเพอร์ตี้ done ที่ ระบุว่าการประมวลผลทั้งชุดเสร็จสมบูรณ์แล้วหรือไม่ และฟิลด์ error ที่รายงานข้อผิดพลาดที่พบระหว่างการประมวลผล หาก done เป็นจริงและไม่มี error แสดงว่าชุดคำสั่งเสร็จสมบูรณ์แล้ว การมี error แสดงว่าการประมวลผลชุดข้อมูลบางส่วนหรือทั้งหมดไม่สำเร็จ

วงจรทั่วไปของคำขอ BatchOptimizeTours มีดังนี้

  1. ส่ง BatchOptimizeToursRequest ไปยัง Route Optimization API ซึ่งจะ แสดงชื่อทรัพยากรของ LRO
  2. สำรวจ GetOperation ที่มีชื่อทรัพยากร LRO ที่ส่งคืนจนกว่าพร็อพเพอร์ตี้ done หรือ error จะปรากฏในการตอบกลับ LRO
  3. หาก done เป็นจริงและไม่มีข้อผิดพลาด ให้อ่าน OptimizeToursResponses จาก URI ของ Google Cloud Storage ที่ระบุในคำขอ BatchOptimizeTours หากมี error ให้ตรวจสอบข้อผิดพลาด อัปเดต OptimizeToursRequestตามนั้นใน Google Cloud Storage แล้วลองอีกครั้ง ตามความเหมาะสมโดยขึ้นอยู่กับข้อผิดพลาดที่พบ

คุณสามารถส่งคำขอ OptimizeTours และ BatchOptimizeTours ได้หลายวิธี ไม่ว่าจะจากบรรทัดคำสั่งหรือใช้ไลบรารีของไคลเอ็นต์

ถัดไป: ส่งคำขอ API