A API Route Optimization expõe dois métodos:
OptimizeToursé um método síncrono que retorna uma rota otimizada em resposta a umaOptimizeToursRequest. Os clientes precisam manter uma conexão aberta com a API Route Optimization até que a solicitação seja processada e umaOptimizeToursResponseou um erro seja retornado.BatchOptimizeToursé um método assíncrono que aceita URIs para um ou maisOptimizeToursRequeste mensagensOptimizeToursResponsecorrespondentes, retornando o nome do recurso de uma operação de longa duração (LRO, na sigla em inglês) (REST, gRPC) que é usada para verificar a conclusão do lote. OsOptimizeToursRequests são processados em segundo plano, para que os clientes mantenham uma conexão aberta com a API Route Optimization apenas o tempo suficiente para enviar oBatchOptimizeToursRequestou chamarGetOperationpara verificar o status da LRO. OBatchOptimizeTourslê solicitações e grava respostas no Google Cloud Storage.
Casos de uso
O OptimizeTours é conveniente para resolver solicitações pequenas e simples ou
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 seja retornada.
BatchOptimizeTours pode processar solicitações maiores e com tempo de resolução
mais longo, porque não requer 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 erros encontrados durante o processamento. Se done for verdadeiro e
nenhum error estiver presente, o lote será concluído. A presença de um
error indica que o processamento de alguns ou de todos os lotes falhou.
O ciclo de vida típico de uma solicitação BatchOptimizeTours é o seguinte:
- Envie um
BatchOptimizeToursRequestpara a API Route Optimization, que retorna o nome do recurso de uma LRO. - Faça uma pesquisa
GetOperationcom o nome do recurso LRO retornado até que as propriedadesdoneouerrorapareçam na resposta da LRO. - Se
donefor verdadeiro e nenhum erro estiver presente, leiaOptimizeToursResponsesdos URIs do Google Cloud Storage especificados na solicitaçãoBatchOptimizeTours. Seerrorestiver presente, inspecione o erro, atualize osOptimizeToursRequests de acordo com o Google Cloud Storage e tente novamente conforme necessário, 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