Panduan ini memperkenalkan peluncuran eksperimental metode API OptimizeToursLongRunning
dan OptimizeToursUri
yang memungkinkan pengguna membuat satu
permintaan pengoptimalan non-pemblokiran. Dalam pengoptimalan non-pemblokiran, pengguna
cepat menerima proto Operasi dari metode yang dapat digunakan
untuk mereferensikan status pengoptimalan dengan memanggil GetOperation
.
Lihat Operasi yang Berjalan Lama
untuk mengetahui detail selengkapnya.
Metode non-pemblokiran ini memberikan
manfaat keandalan dibandingkan metode OptimizeTours
pemblokiran karena
klien tidak perlu mempertahankan koneksi ke server saat pengoptimalan
dijalankan. Selain itu, metode baru ini mempermudah proses debug
kegagalan dibandingkan dengan BatchOptimizeTours
karena setiap pengoptimalan
dikaitkan dengan satu Operasi Berjalan Lama (LRO).
Pengguna yang lebih memilih untuk menyisipkan permintaan pengoptimalan dapat menggunakan metode OptimizeToursLongRunning
, sedangkan pengguna yang lebih memilih untuk mengupload permintaan dan respons baca menggunakan Google Cloud Storage dapat menggunakan metode OptimizeToursUri
.
OptimizeToursLongRunning
Contoh: Membuat permintaan OptimizeToursLongRunning
Sebelum membuat permintaan, ganti parameter berikut dengan nilai yang sesuai untuk lingkungan Anda:
- Pastikan Anda telah mengonfigurasi Kredensial Default Aplikasi seperti yang dijelaskan dalam Menggunakan OAuth.
Tetapkan PROJECT_NUMBER_OR_ID ke nomor atau ID project Cloud Anda.
Perintah berikut mengirim permintaan
OptimizeToursLongRunning
ke Route Optimization API dan menerima ID operasi yang terkait dengannya. MetodeGetOperation
dapat digunakan untuk mengkueri status operasi. Setelah operasi selesai, metadata juga berisiOptimizeToursResponse
akhir.curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeToursLongRunning' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- <<EOM { "model": { "shipments": [ { "pickups": [ { "arrivalLocation": { "latitude": 37.42506261000996, "longitude": -122.09535511930135 } } ], "deliveries": [ { "arrivalLocation": { "latitude": 37.42421503206021, "longitude": -122.09526063135228 } } ] } ], "vehicles": [ { "travelMode": "DRIVING", "costPerKilometer": 1.0 } ], } } EOM
OptimizeToursUri
Seperti BatchOptimizeTours
, Anda dapat menggunakan OptimizeToursUri
untuk terus
menyimpan permintaan dan respons pengoptimalan di Google Cloud Storage.
URI Cloud Storage harus ditentukan dalam pesan permintaan OptimizeToursUri
.
Status Operation
yang ditampilkan hanya dikaitkan dengan satu OptimizeToursRequest
yang dikirimkan.
Contoh: Membuat permintaan OptimizeToursUri
Sebelum membuat permintaan, ganti parameter berikut dengan nilai yang sesuai untuk lingkungan Anda:
- Pastikan Anda telah mengonfigurasi Kredensial Default Aplikasi seperti yang dijelaskan dalam Menggunakan OAuth.
Tetapkan PROJECT_NUMBER_OR_ID ke nomor atau ID project Cloud Anda.
Perintah berikut mengirim permintaan
OptimizeToursUri
ke Route Optimization API dan menerima ID operasi yang terkait dengannya. Gunakan metodeGetOperation
untuk mengkueri status operasi. Setelah operasi selesai,OptimizeToursResponse
disimpan secara jarak jauh di jalur URI output yang diberikan dalam permintaan.curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeToursUri' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ --data @- <<EOM { "input": { "uri": "gs://bucket/path/input/object.json" }, "output": { "uri": "gs://bucket/path/output/object.json" } } EOM