API Tối ưu hoá tuyến đường hiển thị 2 phương thức:
OptimizeTours
là một phương thức đồng bộ trả về một tuyến được tối ưu hoá trong phản hồi choOptimizeToursRequest
. Khách hàng phải duy trì kết nối với API Tối ưu hoá tuyến đường cho đến khi yêu cầu được xử lý và sẽ trả vềOptimizeToursResponse
hoặc lỗi.BatchOptimizeTours
là một phương thức không đồng bộ chấp nhận URI cho mộtOptimizeToursRequest
trở lên vàOptimizeToursResponse
tương ứng thông báo, trả về tên tài nguyên của một Hoạt động chạy dài (LRO) (REST, gRPC) dùng để kiểm tra việc hoàn thành hàng loạt.OptimizeToursRequest
được xử lý ở chế độ nền nên ứng dụng khách duy trì kết nối mở đến API Tối ưu hoá tuyến đường chỉ đủ thời gian để gửiBatchOptimizeToursRequest
hoặc gọiGetOperation
để kiểm tra LRO trạng thái.BatchOptimizeTours
đọc các yêu cầu từ và ghi phản hồi vào Google Cloud Storage.
Trường hợp sử dụng
OptimizeTours
thuận tiện cho việc giải quyết các yêu cầu nhỏ và đơn giản, hoặc
các yêu cầu có thời gian giải quyết chỉ vài phút trở xuống. Duy trì sự tồn tại lâu dài
các kết nối với Route Optimization API (API Tối ưu hoá tuyến đường) làm tăng nguy cơ bị gián đoạn trước khi
có thể trả về một giải pháp.
BatchOptimizeTours
có thể xử lý các yêu cầu lớn hơn và yêu cầu có thời gian giải quyết lâu hơn
vì nó không đòi hỏi một kết nối lâu dài với Tuyến đường
API Tối ưu hoá.
Hoạt động chạy trong thời gian dài
LRO được đọc từ API Tối ưu hoá tuyến đường bằng phương thức GetOperation
để
hãy kiểm tra trạng thái hoàn thành của lô. LRO bao gồm một thuộc tính done
cho biết liệu quá trình xử lý toàn bộ lô đã hoàn tất hay chưa và một error
để báo cáo các lỗi gặp phải trong quá trình xử lý. Nếu done
là đúng và
không có error
, lô đã hoàn tất thành công. Sự hiện diện của
error
cho biết rằng một số hoặc toàn bộ lô không được xử lý thành công.
Sau đây là vòng đời điển hình của một yêu cầu BatchOptimizeTours
:
- Gửi
BatchOptimizeToursRequest
đến API Tối ưu hoá tuyến đường. trả về tên tài nguyên của LRO. - Cuộc thăm dò ý kiến
GetOperation
với tên tài nguyên LRO được trả về cho đếndone
hoặc Các thuộc tínherror
xuất hiện trong phản hồi LRO. - Nếu giá trị
done
là true và không có lỗi, hãy đọcOptimizeToursResponses
từ các URI Google Cloud Storage được chỉ định trongBatchOptimizeTours
của bạn. Nếu cóerror
, hãy kiểm tra lỗi rồi cập nhậtOptimizeToursRequest
tương ứng trong Google Cloud Storage và thử lại như phù hợp, tuỳ thuộc vào lỗi quan sát được.
Bạn có thể gửi nhiều yêu cầu OptimizeTours
và BatchOptimizeTours
theo nhiều cách
qua dòng lệnh hoặc sử dụng thư viện ứng dụng.