Routes API로 경로를 계산할 때, 실시간 교통 정보를 반영해 가장 정확한 결과를 얻을지, 아니면 응답 속도를 우선해 신속히 결과를 받아올지 선택할 수 있습니다. 이때 사용하는 것이 바로 Routing Preference입니다. 이 가이드에서는 응답 품질(accuracy)과 레이턴시(latency)의 균형을 조절하는 세 가지 옵션을 단계별로 살펴보겠습니다.
1. Routing Preference 개요
Routing Preference는 API가 교통 데이터를 얼마나 반영해 경로를 계산할지 결정합니다. 기본값은 TRAFFIC_UNAWARE
로, 교통 정보를 고려하지 않고 가장 빠른 응답을 제공합니다. 반대로 TRAFFIC_AWARE
와 TRAFFIC_AWARE_OPTIMAL
은 실시간 교통 정보를 반영해 각각 적절한 품질과 최고 품질의 경로를 계산합니다.
2. 지원되는 옵션
TRAFFIC_UNAWARE
: 교통 정보를 무시하고 응답 속도를 최적화TRAFFIC_AWARE
: 실시간 교통 정보를 반영하되, 일부 성능 최적화 적용TRAFFIC_AWARE_OPTIMAL
: 실시간 교통 정보를 최대한 반영하되, 성능 최적화 미적용
3. 옵션별 상세 설명
3-1. TRAFFIC_UNAWARE
TRAFFIC_UNAWARE
는 기본 설정이며, 요청 지연(latency)을 최소화하면서 평균적인 교통 상황을 기반으로 경로를 계산합니다. * duration
: 평균 교통 속도를 반영한 ETA * staticDuration
: 과거 교통 데이터만 반영한 ETA (동일 값)
3-2. TRAFFIC_AWARE
TRAFFIC_AWARE
는 실시간 교통 정보를 반영해 보다 정확한 ETA를 제공합니다. * duration
: 실시간 교통 정보 반영 ETA * staticDuration
: 과거 교통 데이터 기반 ETA * 응답 품질이 높아지지만, TRAFFIC_UNAWARE
대비 약간의 지연이 발생합니다.
3-3. TRAFFIC_AWARE_OPTIMAL
TRAFFIC_AWARE_OPTIMAL
은 실시간 교통 정보를 최대한 반영하며 성능 최적화는 적용하지 않습니다. * Google Maps 웹·모바일 앱과 동일한 수준의 최적 경로를 계산 * 가장 긴 지연을 감수하고도 최고 품질의 경로가 필요할 때 사용합니다.
4. 출발 시간 설정 (departureTime)
교통 정보를 반영하는 옵션(TRAFFIC_AWARE
, TRAFFIC_AWARE_OPTIMAL
)을 사용할 때, 미래 출발 시간을 지정하려면 departureTime
을 설정할 수 있습니다. * 지정하지 않으면 요청 시점의 시간으로 자동 설정 * 시간이 멀어질수록 과거 교통 데이터(staticDuration) 비중이 높아집니다.
5. curl 요청 예시
curl -X POST 'https://routes.googleapis.com/directions/v2:computeRoutes' \
-H 'Content-Type: application/json' \
-H 'X-Goog-Api-Key: YOUR_API_KEY' \
-H 'X-Goog-FieldMask: routes.duration,routes.staticDuration' \
--data-raw '{
"origin": {
"location": { "latLng": { "latitude": 37.7749, "longitude": -122.4194 } }
},
"destination": {
"location": { "latLng": { "latitude": 37.7848, "longitude": -122.4090 } }
},
"travelMode": "DRIVE",
"routingPreference": "TRAFFIC_AWARE_OPTIMAL",
"departureTime": "2025-05-25T08:00:00Z"
}'
6. 주의사항 및 요금
TRAFFIC_AWARE
및TRAFFIC_AWARE_OPTIMAL
사용 시 더 높은 요금이 청구됩니다. :contentReference[oaicite:6]{index=6}- 지연(latency)을 감수할 만큼 경로 품질이 중요한 시나리오에만 설정하세요.
Routing Preference 옵션을 적절히 선택하면, 사용자 환경에 맞게 응답 속도와 경로 정확도 간 균형을 맞출 수 있습니다. 빠른 응답이 필요할 땐 TRAFFIC_UNAWARE
, 실제 교통 상황을 반영해 정확도가 중요하다면 TRAFFIC_AWARE
나 TRAFFIC_AWARE_OPTIMAL
을 사용하세요.
'개발 > 구글지도' 카테고리의 다른 글
구글 지도 Routes API로 Route Token 받는 방법 (0) | 2025.06.10 |
---|---|
구글 지도 Routes API 교통 모델(Traffic Model) 설정 (1) | 2025.06.09 |
구글 지도 Routes API 웨이포인트 최적화: Optimize Waypoints (0) | 2025.06.07 |
구글 지도 Routes API 위치 접근 설정 가이드: Location Modifiers (0) | 2025.06.06 |
구글 지도 API로 실시간 경로 계산하기: Compute Routes (1) | 2025.06.05 |