Seçtiğiniz trafik tercihleri, rota ayrıntılarının doğruluğu ile istek performansını dengeler. Bir istekte bulunduğunuzda, mümkün olan en doğru sonuçları döndürmenin mi yoksa sonuçları olabildiğince hızlı şekilde döndürmenin mi daha iyi olduğuna karar vermek istersiniz. Routes API, yanıt verilerinin kalitesi ile yanıtın gecikme süresini kontrol etmenize olanak tanıyan seçenekler sunar.
Trafik veri düzeyini ayarlama
Routes API, rotaları hesaplamak için yönlendirme tercihlerini belirtmenize olanak tanıyan RoutingPreference (REST) ve RoutingPreference (gRPC) özellikleri sunar. Bu tercihler, rota hesaplamasına trafik koşullarının dikkate alınması bakımından farklılık gösterir. Her bir yönlendirme tercihi rota kalitesi, tahmini TVS ve yanıt gecikmesi açısından bir dereceye kadar farklı sonuçlar verir.
Trafik koşulları, trafik akış hızını tanımlar. Örneğin:
- Trafik sıkışıklık olmadığında normal kabul edilir ve trafik kesintisiz bir hızda akar.
- Yoğun saatlere yaklaşırken trafik yoğunluğu artar. Bu da trafiğin yavaşlamasına ve hafif ile orta arası trafik koşullarına neden olur.
- Tampondan bumper'a giden trafikte, akış hızı durarak yoğun trafik koşullarına neden olur.
Trafik bilgisi yok
TRAFFIC_UNAWARE
yönlendirme tercihini belirlediğinizde rotalar, mevcut trafik koşulları dikkate alınmadan hesaplanır. Bu yönlendirme tercihi en düşük yanıt gecikmesini sağlar (yanıtlar en hızlı şekilde döndürülür).
TRAFFIC_UNAWARE
, varsayılan ayardır.
Yanıtta:
GMR,
duration
yanıt özelliğinde yer alır.duration
vestaticDuration
yanıt özellikleri aynı değeri içerir.
Yanıtların en hızlı şekilde döndürülmesini istiyorsanız ve yaklaşık yönlendirme ayrıntıları yeterince iyi olduğunda bu yönlendirme tercihini kullanın.
Trafiğe duyarlı
TRAFFIC_AWARE
yönlendirme tercihini belirlediğinizde rotalar, mevcut trafik koşulları dikkate alınarak hesaplanır. Bunun sonucunda, rota ve rota ayrıntıları gerçek dünya
koşullarını daha doğru yansıtıyor. Veri kalitesindeki bu artış yanıt gecikmesinden kaynaklandığından, gecikmenin büyük bir kısmını azaltmak için performans optimizasyonları uygulanır.
Yanıtta:
Gerçek zamanlı trafiği dikkate alan GMR,
duration
yanıt özelliğinde yer alır.staticDuration
yanıt özelliği, trafik koşulları dikkate alınmadan rotadaki seyahat süresini içerir.
TRAFFIC_UNAWARE
seçeneğinden daha doğru yönlendirme ayrıntıları istiyorsanız bu yönlendirme tercihini kullanın. Yanıtların gecikmede küçük bir artışla döndürülmesi sizin için sorun değilse bu tercihinizi kullanın.
Trafiğe duyarlı optimum
TRAFFIC_AWARE_OPTIMAL
yönlendirme tercihini ayarladığınızda, rotalar mevcut trafik koşulları dikkate alınarak hesaplanır ancak performans optimizasyonu uygulanmaz. Bu modda, sunucu en uygun rotayı bulmak için yol ağında daha kapsamlı bir arama gerçekleştirir.
TRAFFIC_AWARE_OPTIMAL
yönlendirme tercihi, maps.google.com ve Google Haritalar mobil uygulaması tarafından kullanılan moda eşdeğerdir.
Bu seçenek İşlem Rota Matrisi ile kullanıldığında bir istekteki öğe sayısı (kaynak sayısı × hedef sayısı) 100'ü aşamaz. İşlem Rota Matrisi sınırları hakkında daha fazla bilgi için Rota matrisi hesaplama bölümüne bakın.
Yanıtta:
Gerçek zamanlı trafiği dikkate alan GMR,
duration
yanıt özelliğinde yer alır.staticDuration
yanıt özelliği, trafik koşulları dikkate alınmadan rotadaki seyahat süresini içerir.
Bu yönlendirme tercihi en yüksek yanıt gecikmesini sağlar (Yani yanıtlar en uzun gecikmeyle döndürülür). Yanıtların ne kadar zaman aldığından bağımsız olarak, en yüksek kalitede sonuçlar elde etmek istediğinizde bu yönlendirme tercihini kullanın.
Kalkış saatini ayarlamanın etkisi
İsterseniz bir gezi için kalkış saatini ayarlamak üzere departureTime
özelliğini kullanabilirsiniz. departureTime
özelliğini ayarlamazsanız varsayılan olarak isteği yaptığınız zaman kullanılır.
Rota ve süre seçimi yol ağına ve ortalama süreye bağlı olmayan trafik koşullarına bağlı olduğundan
TRAFFIC_UNAWARE
içindepartureTime
değerini ayarlayamazsınız.Canlı trafik koşullarını dikkate alan
TRAFFIC_AWARE
veTRAFFIC_AWARE_OPTIMAL
için canlı trafik,departureTime
yaklaştıkça daha önemli hale gelir. Kalkış saatini geleceğe ne kadar uzağa ayarlarsanız, geçmiş trafik koşulları üzerinde o kadar fazla dikkate alınır.
Örnek ayar yönlendirme tercihi
Aşağıdaki JSON kodu, bir istek mesajı varlık gövdesinde yönlendirme tercihinin nasıl ayarlanacağını gösterir.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
Çoklu çizgi kalitesini yapılandırın
Routes API, trafiğe duyarlı bir çoklu çizgi ile trafik koşulları hakkında bilgi istemenize olanak tanır. Daha fazla bilgi için Çoklu çizgileri isteme bölümüne bakın.
Bir çoklu çizginin kalitesi aşağıdaki terimlerle açıklanabilir:
Çoklu çizgiyi oluşturan nokta sayısı
Noktalar ne kadar fazla olursa çoklu çizgi de o kadar pürüzsüz olur (özellikle kavislerde).
Noktaların kayan nokta hassasiyeti
Noktalar, tek duyarlıklı kayan nokta biçiminde temsil edilen enlem ve boylam değerleri olarak belirtilir. Bu, küçük değerler (tam olarak temsil edilebilir) için iyi sonuç verir ancak kayan nokta yuvarlama hataları nedeniyle değerler arttıkça hassasiyet azalır.
computeRoutes yöntemi (REST) ve ComputeRoutes yöntemi (gRPC), çoklu çizgi kalitesini kontrol etmek için polylineQuality
istek seçeneğini destekler.
Çoklu çizgi kalitesini ayarlama örneği
polylineQuality
, çoklu çizginin kalitesini HIGH_QUALITY
veya OVERVIEW
(varsayılan) olarak belirtir. OVERVIEW
ile çoklu çizgi, az sayıda nokta kullanılarak oluşturulur ve HIGH_QUALITY
ile karşılaştırıldığında daha düşük bir istek gecikmesine sahiptir.
Örneğin, istek gövdesinde:
{ "origin":{ "location":{ "latLng":{ "latitude": 37.419734, "longitude": -122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude": 37.417670, "longitude": -122.079595 } } }, "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE", "polylineQuality": "HIGH_QUALITY", "polylineEncoding": "ENCODED_POLYLINE", "departureTime": "2023-10-15T15:01:23.045123456Z", ... }