您選取的流量偏好設定可平衡路線詳細資料的準確度與請求效能。提出要求時,您需要權衡是否應盡可能傳回最準確的結果,或是盡可能快速傳回結果。Routes API 提供的選項可讓您控制回應資料品質與回應延遲時間。
設定流量資料層級
Routes API 提供 RoutingPreference (REST) 和 RoutingPreference (gRPC),可讓您指定計算路徑的轉送偏好設定。這些偏好設定會將交通狀況納入路線計算,但考量程度不同。每個路徑偏好設定的結果,在路徑品質、預估到達時間和回應延遲方面都會有所差異。
路況會顯示交通流量速度。例如:
- 在沒有壅塞的情況下,系統會將路況視為正常,並以正常的無阻礙速度流動。
- 接近尖峰時段,車流密度增加,導致車流速度變慢,造成車流量從輕度到中度。
- 在串場廣告對流量的適應器中,流量速率的攀爬法因此停滯,會產生大量的路況。
不瞭解流量
設定 TRAFFIC_UNAWARE
路徑偏好設定時,系統會計算路線,但不會考量目前的交通狀況。這個路由偏好設定可提供最低的回應延遲時間 (回應會以最快速度傳回)。
TRAFFIC_UNAWARE
為預設設定。
在回應中:
預估抵達時間包含在
duration
回應屬性中。duration
和staticDuration
回應屬性包含相同的值。
如要盡快取得回應,且大致的路線詳細資料就足夠時,請使用這個路線偏好設定。
路況感知
設定 TRAFFIC_AWARE
路線偏好設定時,系統會根據目前的交通狀況計算路線。因此,路線和路線詳細資料可更準確地反映實際路況。由於資料品質提升會導致回應延遲時間增加,因此我們會套用效能最佳化功能,大幅縮短延遲時間。
在回應中:
duration
回應資源包含考量即時流量的預估觸及廣告。staticDuration
回應屬性包含路線的旅行時間,不考慮交通狀況。
如需比 TRAFFIC_UNAWARE
更準確的路徑詳細資料,但不介意回應的延遲時間略微增加,請使用這個路徑偏好設定。
交通監測功能最佳
設定 TRAFFIC_AWARE_OPTIMAL
路徑設定時,系統會根據目前的交通狀況計算路線,但不會套用效能最佳化設定。在這個模式中,伺服器會更徹底地搜尋道路網路,找出最佳路線。
TRAFFIC_AWARE_OPTIMAL
路徑偏好設定等同於 maps.google.com 和 Google 地圖行動應用程式使用的模式。
搭配 Compute Route Matrix 使用此選項時,要求中的元素數 (起點數 × 目的地數) 不得超過 100。如要進一步瞭解 Compute Route Matrix 限制,請參閱「計算路徑矩陣」。
在回覆中:
duration
回應資源包含考量即時流量的預估觸及廣告。staticDuration
回應屬性包含行經路線的時間長度,不會考量路況。
這個轉送偏好設定可提供最高的回應延遲時間 (也就是回應的回報時間最長)。當您希望取得最高品質的結果時,請使用此轉送偏好設定,不要考慮回應所需時間。
設定出發時間的影響
您可以視需要使用 departureTime
屬性設定行程的出發時間。如果您未設定 departureTime
屬性,則預設值為您提出要求的時間。
對
TRAFFIC_UNAWARE
來說,您無法設定departureTime
,因為路徑和所需時間的選擇取決於路網,以及不考慮時間的平均路況。對於考量即時車流量狀況的
TRAFFIC_AWARE
和TRAFFIC_AWARE_OPTIMAL
,departureTime
距離現在的時間越近,即時車流量的重要性就越高。您設定的出發時間越晚,系統就會越重視歷來交通狀況。
設定路徑偏好設定的範例
以下 JSON 程式碼示範如何在要求訊息實體主體中設定路由偏好設定。
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
設定折線上的路況
您可以使用 Routes API 要求沿著路況感知折線的路況資訊。詳情請參閱要求折線。