Eşzamanlı ve eşzamansız uç noktalar

Avrupa Ekonomik Alanı (AEA) geliştiricileri

Route Optimization API iki yöntem sunar:

  • OptimizeTours, OptimizeToursRequest yanıtı olarak optimize edilmiş bir rota döndüren eşzamanlı bir yöntemdir. İstemciler, istek işlenene ve OptimizeToursResponse veya hata döndürülene kadar Route Optimization API ile açık bir bağlantı sürdürmelidir.
  • BatchOptimizeTours, bir veya daha fazla OptimizeToursRequest için URI'leri ve karşılık gelen OptimizeToursResponse mesajları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 BatchOptimizeToursRequest göndermek veya LRO durumunu kontrol etmek için GetOperation'yu çağırmak üzere yeterli süre boyunca 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ü şu şekildedir:

  1. BatchOptimizeToursRequest gönderin. Bu, Route Optimization API'ye gönderilir ve LRO'nun kaynak adını döndürür.
  2. done veya error özellikleri LRO yanıtında görünene kadar döndürülen LRO kaynak adıyla GetOperation anketini yapın.
  3. done doğruysa ve hata yoksa BatchOptimizeTours isteğinde belirtilen Google Cloud Storage URI'lerinden OptimizeToursResponses okunur. error varsa hatayı inceleyin, Google Cloud Storage'daki 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.

Sonraki: API isteği gönderme