A API Route Optimization expõe dois métodos:
OptimizeTours
é um método síncrono que retorna uma rota otimizada em resposta a umOptimizeToursRequest
. Os clientes precisam manter uma conexão aberta com a API Route Optimization até que a solicitação seja processada e umOptimizeToursResponse
ou erro seja retornado.BatchOptimizeTours
é um método assíncrono que aceita URIs para um ou maisOptimizeToursRequest
e mensagensOptimizeToursResponse
correspondentes, retornando o nome do recurso de uma operação de longa duração (LRO) (REST, gRPC) usada para verificar a conclusão do lote. OsOptimizeToursRequest
são processados em segundo plano, então os clientes mantêm uma conexão aberta com a API Route Optimization apenas pelo tempo necessário para enviar oBatchOptimizeToursRequest
ou chamarGetOperation
para verificar o status da LRO. OBatchOptimizeTours
lê solicitações e grava respostas no Google Cloud Storage.
Casos de uso
O OptimizeTours
é conveniente para resolver solicitações pequenas e simples ou solicitações com tempos de resolução de alguns minutos ou menos. Manter conexões de longa duração com a API Route Optimization aumenta o risco de interrupção antes que uma solução possa ser retornada.
O BatchOptimizeTours
pode processar solicitações maiores e com mais tempo de resolução porque não exige uma conexão de longa duração com a API Route Optimization.
Operações de longa duração
As LROs são lidas da API Route Optimization usando o método GetOperation
para
verificar o status de conclusão de um lote. As LROs incluem uma propriedade done
que indica se o processamento de todo o lote foi concluído e um campo error
que informa os erros encontrados durante o processamento. Se done
for verdadeiro e nenhum error
estiver presente, o lote será concluído com sucesso. A presença de um
error
indica que parte ou todo o lote não foi processado.
O ciclo de vida típico de uma solicitação BatchOptimizeTours
é o seguinte:
- Envie um
BatchOptimizeToursRequest
para a API Route Optimization, que retorna o nome do recurso de uma LRO. - Faça uma pesquisa de
GetOperation
com o nome do recurso LRO retornado até que as propriedadesdone
ouerror
apareçam na resposta da LRO. - Se
done
for verdadeiro e não houver erros, leiaOptimizeToursResponses
dos URIs do Google Cloud Storage especificados na solicitaçãoBatchOptimizeTours
. Seerror
estiver presente, inspecione o erro, atualize osOptimizeToursRequest
s de acordo com o Google Cloud Storage e tente de novo conforme apropriado, dependendo do erro observado.
É possível enviar solicitações OptimizeTours
e BatchOptimizeTours
de várias
maneiras, na linha de comando ou usando uma biblioteca de cliente.
Próxima etapa: fazer uma solicitação de API