Este guia apresenta o lançamento experimental dos métodos de API OptimizeToursLongRunning
e OptimizeToursUri
, que permitem aos usuários fazer solicitações de otimização únicas
sem bloqueio. Em uma otimização sem bloqueio, o usuário
recebe rapidamente um proto de operação do método que pode ser usado
para referenciar o status da otimização chamando GetOperation
.
Consulte Operações de longa duração
para mais detalhes.
Esses métodos não bloqueadores oferecem os benefícios de confiabilidade em relação ao método de bloqueio OptimizeTours
, já que o cliente não precisa manter a conexão com o servidor enquanto a otimização está sendo executada. Além disso, esses novos métodos facilitam a depuração de falhas em comparação com BatchOptimizeTours
, já que cada otimização está associada a uma única operação de longa duração (LRO).
Os usuários que preferem inserir a solicitação de otimização podem usar o método
OptimizeToursLongRunning
, enquanto aqueles que preferem fazer upload das
solicitações e da resposta de leitura usando o Google Cloud Storage podem usar o método
OptimizeToursUri
.
OptimizeToursLongRunning
Exemplo: fazer uma solicitação OptimizeToursLongRunning
Antes de fazer uma solicitação, substitua os seguintes parâmetros por valores adequados para seu ambiente:
- Verifique se você configurou as Application Default Credentials conforme descrito em Usar o OAuth.
Defina PROJECT_NUMBER_OR_ID como o número ou ID do projeto do Cloud.
O comando a seguir envia uma solicitação
OptimizeToursLongRunning
para a API Route Optimization e recebe um ID de operação associado a ela. O métodoGetOperation
pode ser usado para consultar o status da operação. Quando a operação for concluída, os metadados também vão conter oOptimizeToursResponse
final.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
Assim como BatchOptimizeTours
, você pode usar OptimizeToursUri
para continuar
armazenando sua solicitação e resposta de otimização no Google Cloud Storage.
Os URIs do Cloud Storage precisam ser especificados na mensagem de solicitação OptimizeToursUri
.
O status Operation
retornado está associado apenas ao único OptimizeToursRequest
enviado.
Exemplo: fazer uma solicitação OptimizeToursUri
Antes de fazer uma solicitação, substitua os seguintes parâmetros por valores adequados para seu ambiente:
- Verifique se você configurou as Application Default Credentials conforme descrito em Usar o OAuth.
Defina PROJECT_NUMBER_OR_ID como o número ou ID do projeto do Cloud.
O comando a seguir envia uma solicitação
OptimizeToursUri
para a API Route Optimization e recebe um ID de operação associado a ela. Use o métodoGetOperation
para consultar o status da operação. Quando a operação for concluída, oOptimizeToursResponse
será armazenado remotamente no caminho do URI de saída fornecido na solicitação.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