Route Optimization API iki yöntem sunar:
- OptimizeTours,- OptimizeToursRequestyanıtı olarak optimize edilmiş bir rota döndüren eşzamanlı bir yöntemdir. İstemciler, istek işlenene ve- OptimizeToursResponseveya hata döndürülene kadar Rota Optimizasyonu API'siyle açık bir bağlantı sürdürmelidir.
- BatchOptimizeTours, bir veya daha fazla- OptimizeToursRequestiçin URI'leri ve karşılık gelen- OptimizeToursResponsemesajlarını kabul eden, toplu işlemin tamamlanıp tamamlanmadığını kontrol etmek için kullanılan bir uzun süreli işlem (LRO) kaynak adını döndüren eşzamansız bir yöntemdir (REST, gRPC).- OptimizeToursRequest'ler arka planda işlenir. Bu nedenle, istemciler yalnızca- BatchOptimizeToursRequestgöndermek veya LRO durumunu kontrol etmek için- GetOperation'yu çağırmak üzere Rota Optimizasyonu API'sine açık bağlantılarını korur.- BatchOptimizeTours, Google Cloud Storage'dan gelen istekleri okur ve yanıtları buraya yazar.
Kullanım alanları
OptimizeTours, küçük ve basit istekleri çözmek ya da birkaç dakika veya daha kısa sürede çözülebilecek istekler için uygundur. Rota Optimizasyonu API'si ile uzun süreli bağlantıların sürdürülmesi, çözüm döndürülmeden önce kesinti riskini artırır.
BatchOptimizeTours, Route Optimization API'ye uzun süreli bir bağlantı gerektirmediği için daha büyük ve daha uzun sürede çözülen istekleri işleyebilir.
Uzun süreli işlemler
Toplu işlemin tamamlanma durumunu kontrol etmek için GetOperation yöntemi kullanılarak Rota Optimizasyonu API'sinden uzun süreli işlemler okunur. LRO'lar, toplu işlemin tamamının işlenmesinin tamamlanıp tamamlanmadığını belirten bir done özelliği ve işleme sırasında karşılaşılan hataları bildiren bir error alanı içerir. done doğruysa ve error yoksa toplu işlem başarıyla tamamlanmıştır. error simgesinin bulunması, toplu işlemin bir kısmının veya tamamının işlenemediğini gösterir.
Bir BatchOptimizeTours isteğinin tipik yaşam döngüsü aşağıdaki gibidir:
- BatchOptimizeToursRequestgönderin. Bu işlem, Route Optimization API'ye yapılır ve LRO'nun kaynak adını döndürür.
- doneveya- errorözellikleri LRO yanıtında görünene kadar döndürülen LRO kaynak adıyla- GetOperationanketini yapın.
- donedoğruysa ve hata yoksa- BatchOptimizeToursisteğinde belirtilen Google Cloud Storage URI'lerinden- OptimizeToursResponsesokunur.- errorvarsa hatayı inceleyin, Google Cloud Storage'da- OptimizeToursRequest'leri buna göre güncelleyin ve gözlemlenen hataya bağlı olarak uygun şekilde yeniden deneyin.
OptimizeTours ve BatchOptimizeTours isteklerini komut satırından veya bir istemci kitaplığı kullanarak çeşitli şekillerde gönderebilirsiniz.