การเปรียบเทียบ OptimizeTours กับ BatchOptimizeTours

Route Optimization API มีวิธีการแสดง 2 วิธีดังนี้

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

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

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

BatchOptimizeTours สามารถจัดการคำขอและคำขอขนาดใหญ่ด้วยเวลาในการแก้ปัญหาที่นานขึ้น เนื่องจากไม่จำเป็นต้องมีการเชื่อมต่อระยะเวลานานกับ Route Accessibility 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