L'API Route Optimization espone due metodi:
OptimizeTours
è un metodo sincrono che restituisce una route ottimizzata in risposta a unOptimizeToursRequest
. I client devono mantenere una connessione aperta all'API Route Optimization fino a quando la richiesta non viene elaborata e viene restituito un errore oOptimizeToursResponse
.BatchOptimizeTours
è un metodo asincrono che accetta URI per uno o piùOptimizeToursRequest
e messaggiOptimizeToursResponse
corrispondenti, restituendo il nome della risorsa LRO (Long Running Operation) (REST, gRPC) utilizzato per verificare il completamento del batch. LeOptimizeToursRequest
vengono elaborate in background, pertanto i client mantengono connessioni aperte all'API Route Optimization solo per il tempo necessario a inviare ilBatchOptimizeToursRequest
o a controllare la richiesta LRO10/}.GetOperation
BatchOptimizeTours
legge le richieste e scrive le risposte in Google Cloud Storage.
Casi d'uso
OptimizeTours
è ideale per risolvere richieste semplici e piccole o per
richieste con tempi di risoluzione di pochi minuti o meno. Il mantenimento di connessioni di lunga durata
all'API Route Optimization aumenta il rischio di interruzione prima
di restituire una soluzione. Per ulteriori dettagli, vedi Utilizzare il timeout.
BatchOptimizeTours
può gestire richieste più grandi e richieste con tempi di risoluzione più lunghi perché non richiede una connessione di lunga durata all'API Route Optimization.
Operazioni a lunga esecuzione
Gli LRO vengono letti dall'API Route Optimization utilizzando il metodo GetOperation
per verificare lo stato di completamento di un batch. Gli LRO includono una proprietà done
che
indica se l'elaborazione dell'intero batch è completata e un campo error
che segnala gli errori riscontrati durante l'elaborazione. Se done
è true e
non è presente error
, il batch è stato completato correttamente. La presenza di un error
indica che l'elaborazione del batch ha avuto esito negativo in parte o del tutto.
Il tipico ciclo di vita di una richiesta BatchOptimizeTours
è il seguente:
- Invia un oggetto
BatchOptimizeToursRequest
all'API Route Optimization, che restituisce il nome della risorsa di un LRO. - Sondaggio
GetOperation
con il nome della risorsa LRO restituito fino a quando le proprietàdone
oerror
non vengono visualizzate nella risposta LRO. - Se
done
è true e non sono presenti errori, leggiOptimizeToursResponses
dagli URI di Google Cloud Storage specificati nella richiestaBatchOptimizeTours
. Se è presenteerror
, esamina l'errore, aggiorna iOptimizeToursRequest
di conseguenza in Google Cloud Storage e riprova in base alle esigenze, in base all'errore osservato.
Puoi inviare le richieste OptimizeTours
e BatchOptimizeTours
in diversi modi, dalla riga di comando o utilizzando una libreria client.