OptimizeTours und BatchOptimizeTours vergleichen

Die Route Optimization API stellt zwei Methoden zur Verfügung:

  • OptimizeTours ist eine synchrone Methode, die eine optimierte Route in Antwort auf OptimizeToursRequest. Die Kundschaft muss eine offene Verbindung zur Route Optimization API herstellen, bis die Anfrage verarbeitet wurde und OptimizeToursResponse oder ein Fehler wird zurückgegeben.
  • BatchOptimizeTours ist eine asynchrone Methode, die URIs für eine URL akzeptiert. oder mehr OptimizeToursRequest und entsprechende OptimizeToursResponse Nachrichten, die den Ressourcennamen eines lang laufenden Vorgangs (Long Running Operation, LRO) zurückgeben (REST, gRPC), die zur Überprüfung des Batchabschlusses verwendet wird. OptimizeToursRequest-Daten werden im Hintergrund verarbeitet, eine offene Verbindung zur Route Optimization API, die nur so lange besteht, BatchOptimizeToursRequest oder GetOperation anrufen, um LRO zu prüfen Status. BatchOptimizeTours liest Anfragen aus und schreibt Antworten in Google Cloud Storage

Anwendungsfälle

OptimizeTours eignet sich für kleine und einfache Anfragen Anfragen mit einer Bearbeitungszeit von wenigen Minuten oder weniger. Langlebig erhöht das Risiko von Unterbrechungen vor eine Lösung zurückgegeben werden kann.

BatchOptimizeTours kann größere und längere Anfragen verarbeiten da hierfür keine langlebige Verbindung zur Route erforderlich ist. Optimierungs-API

Lang andauernde Vorgänge

LROs werden von der Route Optimization API mit der Methode GetOperation gelesen, um den Abschlussstatus eines Batches prüfen. LROs enthalten das Attribut done, das gibt an, ob die Verarbeitung des gesamten Batches abgeschlossen ist und ein error Feld, das während der Verarbeitung aufgetretene Fehler meldet. Wenn done wahr ist und kein error vorhanden ist, wurde der Batch erfolgreich abgeschlossen. Das Vorhandensein eines error gibt an, dass die Verarbeitung eines Teils oder des gesamten Batches fehlgeschlagen ist.

Der typische Lebenszyklus einer BatchOptimizeTours-Anfrage sieht so aus:

  1. Senden Sie eine BatchOptimizeToursRequest an die Route Optimization API, die gibt den Ressourcennamen eines LRO zurück.
  2. Fragen Sie GetOperation mit dem zurückgegebenen Namen der LRO-Ressource ab, bis done oder error-Properties werden in der Antwort auf lange Sicht aufgeführt.
  3. Wenn done „true“ ist und kein Fehler vorhanden ist, lesen Sie OptimizeToursResponses über die Google Cloud Storage-URIs, die in BatchOptimizeTours angegeben sind Wenn error vorhanden ist, prüfen Sie den Fehler und aktualisieren Sie den OptimizeToursRequest entsprechend in Google Cloud Storage und wiederholen Sie den Vorgang als je nach beobachtetem Fehler angemessen ist.

Sie können OptimizeTours- und BatchOptimizeTours-Anfragen auf einer Vielzahl von entweder über die Befehlszeile oder mithilfe einer Clientbibliothek.

Nächster Schritt: API-Anfrage senden