L'API Route Optimization espone due metodi:
OptimizeToursè un metodo sincrono che restituisce un percorso ottimizzato in risposta a unOptimizeToursRequest. I client devono mantenere una connessione aperta all'API Route Optimization finché la richiesta non viene elaborata e non viene restituito unOptimizeToursResponseo un errore.BatchOptimizeToursè un metodo asincrono che accetta URI per uno o più messaggiOptimizeToursRequesteOptimizeToursResponsecorrispondenti, restituendo il nome della risorsa di un'operazione a lunga esecuzione (LRO) (REST, gRPC) utilizzata per verificare il completamento del batch. LeOptimizeToursRequestvengono elaborate in background, quindi i client mantengono una connessione aperta all'API Route Optimization solo per il tempo necessario a inviare laBatchOptimizeToursRequesto a chiamareGetOperationper controllare lo stato della LRO.BatchOptimizeTourslegge le richieste da Google Cloud Storage e scrive le risposte in Google Cloud Storage.
Casi d'uso
OptimizeTours è utile per risolvere richieste piccole e semplici o richieste con tempi di risoluzione di pochi minuti o meno. Il mantenimento di connessioni a lunga durata all'API Route Optimization aumenta il rischio di interruzione prima che possa essere restituita una soluzione.
BatchOptimizeTours può gestire richieste più grandi e richieste con tempi di risoluzione più lunghi perché non richiede una connessione a lunga durata all'API Route Optimization.
Operazioni a lunga esecuzione
Le LRO vengono lette dall'API Route Optimization utilizzando il metodo GetOperation per controllare lo stato di completamento di un batch. Le LRO includono una proprietà done che indica se l'elaborazione dell'intero batch è stata completata e un campo error che segnala gli errori riscontrati durante l'elaborazione. Se done è true e non è presente alcun error, il batch è stato completato correttamente. La presenza di un error indica che l'elaborazione di alcuni o di tutti i batch non è riuscita.
Il ciclo di vita tipico di una richiesta BatchOptimizeTours è il seguente:
- Invia una
BatchOptimizeToursRequestall'API Route Optimization, che restituisce il nome della risorsa di una LRO. - Esegui il polling di
GetOperationcon il nome della risorsa LRO restituito finché le proprietàdoneoerrornon vengono visualizzate nella risposta LRO. - Se
doneè true e non è presente alcun errore, leggiOptimizeToursResponsesdagli URI di Google Cloud Storage specificati nella richiestaBatchOptimizeTours. Se è presente unerror, esamina l'errore, aggiorna leOptimizeToursRequestdi conseguenza in Google Cloud Storage e riprova in base all'errore osservato.
Puoi inviare richieste OptimizeTours e BatchOptimizeTours in vari
modi, dalla riga di comando o utilizzando una libreria client.
Passaggio successivo: inviare una richiesta API