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/} เพื่อทำการตรวจสอบBatchOptimizeToursRequest
GetOperation
BatchOptimizeTours
จะอ่านคำขอจากและเขียนการตอบกลับไปยัง Google Cloud Storage
กรณีการใช้งาน
OptimizeTours
จะสะดวกในการแก้ปัญหาคำขอขนาดเล็กและง่าย หรือคำขอที่มีเวลาแก้ปัญหาเพียงไม่กี่นาที การคงการเชื่อมต่อไว้กับ Route Optimization API เป็นระยะเวลานานจะทำให้มีความเสี่ยงของการหยุดชะงักมากขึ้นก่อนที่จะส่งคืนโซลูชันได้
BatchOptimizeTours
สามารถจัดการคำขอและคำขอขนาดใหญ่ด้วยเวลาในการแก้ปัญหาที่นานขึ้น เนื่องจากไม่จำเป็นต้องมีการเชื่อมต่อระยะเวลานานกับ Route Accessibility API
การดำเนินการที่ใช้เวลานาน
ระบบจะอ่าน LRO จาก Route Optimization API โดยใช้เมธอด GetOperation
เพื่อตรวจสอบสถานะการดำเนินการของกลุ่มให้เสร็จสมบูรณ์ LRO มีพร็อพเพอร์ตี้ done
ที่ระบุว่าการประมวลผลกลุ่มทั้งหมดเสร็จสมบูรณ์แล้วหรือไม่ และช่อง error
ที่รายงานข้อผิดพลาดระหว่างการประมวลผล หาก done
เป็นจริงและไม่มี error
อยู่ หมายความว่ากลุ่มดำเนินการสำเร็จแล้ว การมี error
บ่งบอกว่าประมวลผลกลุ่มบางส่วนหรือทั้งหมดไม่สำเร็จ
วงจรทั่วไปของคำขอ BatchOptimizeTours
มีดังนี้
- ส่ง
BatchOptimizeToursRequest
ไปยัง Route Optimization API ซึ่งจะแสดงชื่อทรัพยากรของ LRO - แบบสำรวจ
GetOperation
ที่มีชื่อทรัพยากร LRO ที่แสดงผลอยู่จนกว่าพร็อพเพอร์ตี้done
หรือerror
จะปรากฏในการตอบกลับ LRO - หาก
done
เป็นจริงและไม่มีข้อผิดพลาด ให้อ่านOptimizeToursResponses
จาก URI ของ Google Cloud Storage ที่ระบุในคำขอBatchOptimizeTours
หากมีerror
อยู่ ให้ตรวจสอบข้อผิดพลาด อัปเดตOptimizeToursRequest
ให้สอดคล้องกันใน Google Cloud Storage แล้วลองอีกครั้งตามความเหมาะสมโดยขึ้นอยู่กับข้อผิดพลาดที่พบ
คุณส่งคำขอ OptimizeTours
และ BatchOptimizeTours
ได้หลายวิธี ไม่ว่าจะจากบรรทัดคำสั่งหรือใช้ไลบรารีของไคลเอ็นต์