En esta guía, se presenta el lanzamiento experimental de los OptimizeToursLongRunning
y OptimizeToursUri métodos de la API, que permiten a los usuarios realizar solicitudes de optimización únicas
sin bloqueo. En una optimización sin bloqueo, el usuario
recibe rápidamente un proto de Operation del método que se puede usar
para hacer referencia al estado de la optimización llamando a GetOperation.
Consulta Operaciones de larga duración
para obtener más detalles.
Estos métodos sin bloqueo proporcionan los
beneficios de confiabilidad sobre el método OptimizeTours de bloqueo, ya que el
cliente no necesita mantener la conexión con el servidor mientras se ejecuta la optimización. Además, estos métodos nuevos facilitan la depuración de fallas en comparación con BatchOptimizeTours, ya que cada optimización está asociada con una sola operación de larga duración (LRO).
Los usuarios que prefieran insertar la solicitud de optimización pueden usar el
OptimizeToursLongRunning método, mientras que los usuarios que prefieran subir las
solicitudes y leer la respuesta con Google Cloud Storage pueden usar el
OptimizeToursUri método.
OptimizeToursLongRunning
Ejemplo: Realiza una solicitud de OptimizeToursLongRunning
Antes de realizar una solicitud, reemplaza los siguientes parámetros por valores adecuados para tu entorno:
- Asegúrate de tener configuradas las credenciales predeterminadas de la aplicación como se describe en Usar OAuth.
Establece PROJECT_NUMBER_OR_ID en el número o ID de tu proyecto de Cloud.
El siguiente comando envía una solicitud de
OptimizeToursLongRunninga la API de Route Optimization y recibe un ID de operación asociado. Se puede usar el métodoGetOperationpara consultar el estado de la operación. Una vez que se completa la operación, los metadatos también contienen la finalOptimizeToursResponse.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
Al igual que BatchOptimizeTours, puedes usar OptimizeToursUri para seguir
almacenando tu solicitud y respuesta de optimización en Google Cloud Storage.
Los URIs de Cloud Storage se deben especificar en el mensaje de solicitud OptimizeToursUri.
El estado Operation que se muestra solo está asociado con la OptimizeToursRequest enviada.
Ejemplo: Realiza una solicitud de OptimizeToursUri
Antes de realizar una solicitud, reemplaza los siguientes parámetros por valores adecuados para tu entorno:
- Asegúrate de tener configuradas las credenciales predeterminadas de la aplicación como se describe en Usar OAuth.
Establece PROJECT_NUMBER_OR_ID en el número o ID de tu proyecto de Cloud.
El siguiente comando envía una solicitud de
OptimizeToursUria la API de Route Optimization y recibe un ID de operación asociado. Usa elGetOperationmétodo para consultar el estado de la operación. Una vez que se completa la operación, laOptimizeToursResponsese almacena de forma remota en la ruta de URI de salida que se proporciona en la solicitud.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