Route Optimization API iki yöntem sunar:
OptimizeTours
, birOptimizeToursRequest
'a yanıt olarak optimize edilmiş bir rota döndüren eşzamanlı bir yöntemdir. İstekler işlenipOptimizeToursResponse
veya hata döndürülene kadar istemcilerin Route Optimization API ile açık bir bağlantısı olmalıdır.BatchOptimizeTours
, bir veya daha fazlaOptimizeToursRequest
ve ilgiliOptimizeToursResponse
mesajlarının URI'lerini kabul eden, toplu tamamlamayı kontrol etmek için kullanılan bir uzun süreli işlemin (LRO) (REST, gRPC) kaynak adını döndüren asynchronize bir yöntemdir.OptimizeToursRequest
'lar arka planda işlenir. Bu nedenle, istemciler Route Optimization API'ye yalnızcaBatchOptimizeToursRequest
'ı göndermek veya LRO durumunu kontrol etmek içinGetOperation
'yi çağırmak için yeterince uzun bir süre açık bağlantılar korur.BatchOptimizeTours
, Google Cloud Storage'dan gelen istekleri okur ve yanıtları buraya yazar.
Kullanım alanları
OptimizeTours
, küçük ve basit istekleri veya çözüm süresi birkaç dakika veya daha kısa olan istekleri çözmek için uygundur. Rota Optimizasyonu API'sine uzun süreli bağlantılar sürdürmek, bir çözüm döndürülmeden önce kesinti riskini artırır.
BatchOptimizeTours
, Route Optimization API ile uzun süreli bir bağlantı gerektirmediğinden daha büyük istekleri ve çözüm süresi daha uzun olan istekleri işleyebilir.
Uzun süreli işlemler
LRO'lar, bir grubun tamamlanma durumunu kontrol etmek için GetOperation
yöntemi kullanılarak Route Optimization API'den okunur. LRO'lar, tüm grubun işlenip işlenmediğini belirten bir done
mülkü ve işleme sırasında karşılaşılan hataları bildiren bir error
alanı içerir. done
doğruysa ve error
mevcut değilse toplu işlem başarıyla tamamlanmıştır. error
işaretinin bulunması, toplu işleme işleminin bir kısmının veya tamamının başarısız olduğunu gösterir.
BatchOptimizeTours
isteğinin tipik yaşam döngüsü aşağıdaki gibidir:
- Route Optimization API'ye bir
BatchOptimizeToursRequest
gönderin. Bu API, LRO'nun kaynak adını döndürür. - LRO yanıtında
done
veyaerror
özellikleri görünene kadar döndürülen LRO kaynak adıylaGetOperation
'ü sorgulayın. done
doğruysa ve hata yoksaBatchOptimizeTours
isteğinde belirtilen Google Cloud Storage URI'lerindenOptimizeToursResponses
değerini okuyun.error
varsa hatayı inceleyin, Google Cloud Storage'daOptimizeToursRequest
öğelerini uygun şekilde güncelleyin ve gözlemlenen hataya göre uygun şekilde yeniden deneyin.
OptimizeTours
ve BatchOptimizeTours
isteklerini komut satırından veya istemci kitaplığı kullanarak çeşitli şekillerde gönderebilirsiniz.