Lựa chọn ưu tiên về lưu lượng truy cập mà bạn chọn sẽ cân bằng độ chính xác của thông tin chi tiết về tuyến đường với hiệu suất của yêu cầu theo một trong hai cách:
Nhận biết lưu lượng truy cập – Trả về kết quả chính xác nhất có thể (độ trễ cao hơn).
Không nhận biết lưu lượng truy cập – Trả về kết quả nhanh nhất có thể (độ trễ thấp nhất).
Khi bạn đưa ra yêu cầu, hãy cân nhắc xem bạn nên trả về kết quả chính xác nhất có thể hay trả về kết quả nhanh nhất có thể. Routes API cung cấp các lựa chọn cho phép bạn kiểm soát chất lượng của dữ liệu phản hồi so với độ trễ của phản hồi.
Cách đặt mức lưu lượng truy cập
Routes API cung cấp RoutingPreference (REST) và RoutingPreference (gRPC) cho phép bạn chỉ định các lựa chọn ưu tiên về định tuyến để tính toán các tuyến đường.
Theo mặc định, kết quả sẽ không có thông tin về tình trạng giao thông. Bạn chọn các lựa chọn về giao thông bằng cách sử dụng các lựa chọn ưu tiên về định tuyến TRAFFIC_UNAWARE
, TRAFFIC_AWARE
và TRAFFIC_AWARE_OPTIMAL
. Mỗi lựa chọn ưu tiên về định tuyến sẽ tạo ra kết quả khác nhau về chất lượng tuyến đường, thời gian đến dự kiến và độ trễ phản hồi.
Tình trạng giao thông
Tình trạng giao thông cho biết tốc độ lưu thông:
Giao thông bình thường: Không bị tắc nghẽn và giao thông lưu thông ở tốc độ bình thường.
Giao thông từ thưa thớt đến vừa phải: Tình trạng tắc nghẽn gia tăng, giao thông di chuyển với tốc độ chậm hơn.
Giao thông đông đúc: Tình trạng tắc nghẽn nghiêm trọng, tốc độ giao thông giảm đáng kể.
Không có thông tin giao thông
TRAFFIC_UNAWARE
là chế độ cài đặt mặc định. Hãy sử dụng lựa chọn ưu tiên về định tuyến này khi bạn muốn nhận được phản hồi nhanh nhất và thông tin định tuyến gần đúng là đủ.
Các tuyến đường TRAFFIC_UNAWARE
được tính toán mà không tính đến tình trạng giao thông hiện tại. Lựa chọn ưu tiên về định tuyến này mang lại phản hồi yêu cầu nhanh nhất (độ trễ thấp nhất).
Nếu bạn chọn TRAFFIC_UNAWARE
, tuyến đường và thời gian đã chọn sẽ dựa trên mạng lưới đường bộ và điều kiện giao thông trung bình không phụ thuộc vào thời gian, chứ không phải điều kiện đường bộ hiện tại. Do đó, các tuyến đường có thể bao gồm những con đường tạm thời bị đóng. Kết quả cho một yêu cầu nhất định có thể thay đổi theo thời gian do những thay đổi trong mạng lưới đường bộ, điều kiện giao thông trung bình mới nhất và bản chất phân tán của dịch vụ. Kết quả cũng có thể thay đổi giữa các tuyến đường gần tương đương bất cứ lúc nào hoặc với tần suất bất kỳ.
Sau đây là những câu trả lời bạn sẽ thấy:
duration
– Chứa giờ đến dự kiến của tuyến đường.staticDuration
: Thời gian đến dự kiến cho tuyến đường chỉ dựa trên thông tin giao thông trong quá khứ. Đối vớiTRAFFIC_UNAWARE
, giá trị này chứa cùng giá trị vớiduration
.
Nhận biết tình trạng giao thông
Sử dụng lựa chọn ưu tiên về định tuyến này khi bạn muốn có thông tin định tuyến chính xác hơn so với TRAFFIC_UNAWARE
, nhưng không ngại nếu các phản hồi được trả về với độ trễ tăng vừa phải.
Khi bạn đặt lựa chọn ưu tiên về đường đi là TRAFFIC_AWARE
, dịch vụ sẽ tính toán tuyến đường có tính đến tình trạng giao thông hiện tại. Do đó, tuyến đường và thông tin chi tiết về tuyến đường sẽ phản ánh chính xác hơn tình trạng thực tế. Vì việc tăng chất lượng dữ liệu này phải trả giá bằng độ trễ phản hồi, nên các hoạt động tối ưu hoá hiệu suất được áp dụng để giảm phần lớn độ trễ.
Sau đây là những câu trả lời bạn sẽ thấy:
duration
: Thời gian đến dự kiến có tính đến thông tin giao thông theo thời gian thực.staticDuration
Thời gian đến dự kiến cho tuyến đường chỉ dựa trên thông tin giao thông trong quá khứ.
Tối ưu hoá dựa trên thông tin giao thông
Hãy sử dụng lựa chọn ưu tiên định tuyến này khi bạn muốn có kết quả chất lượng cao nhất mà không cần quan tâm đến thời gian phản hồi. Lựa chọn ưu tiên định tuyến này có độ trễ lâu nhất khi trả về các phản hồi (độ trễ cao nhất).
Khi bạn đặt lựa chọn ưu tiên về định tuyến TRAFFIC_AWARE_OPTIMAL
, dịch vụ sẽ tính toán tuyến đường có tính đến tình trạng giao thông hiện tại, nhưng không áp dụng các chế độ tối ưu hoá hiệu suất. Ở chế độ này, máy chủ sẽ thực hiện một tìm kiếm kỹ lưỡng hơn về mạng lưới đường bộ để tìm ra tuyến đường tối ưu.
Lựa chọn ưu tiên về TRAFFIC_AWARE_OPTIMAL
định tuyến tương đương với chế độ mà maps.google.com và ứng dụng di động Google Maps sử dụng.
Khi bạn sử dụng lựa chọn này với Compute Route Matrix, số lượng phần tử trong một yêu cầu (số lượng điểm xuất phát × số lượng điểm đến) không được vượt quá
- Để biết thêm thông tin về hạn mức của Compute Route Matrix, hãy xem phần Tính toán ma trận tuyến đường.
Sau đây là những câu trả lời bạn sẽ thấy:
duration
: Thời gian đến dự kiến của tuyến đường, có tính đến thông tin giao thông theo thời gian thực.staticDuration
: Thời gian đến dự kiến cho tuyến đường chỉ dựa trên thông tin giao thông trong quá khứ.
Đặt thời gian khởi hành (không bắt buộc)
Chỉ sử dụng thuộc tính này cho các yêu cầu nhận biết lưu lượng truy cập mà thời gian khởi hành cần phải là thời gian trong tương lai. Nếu bạn không đặt thuộc tính departureTime
, thì thuộc tính này sẽ mặc định là thời gian bạn đưa ra yêu cầu.
Sử dụng thuộc tính departureTime
cùng với các lựa chọn TRAFFIC_AWARE
và TRAFFIC_AWARE_OPTIMAL
khi bạn muốn điều chỉnh cách dịch vụ dự đoán lưu lượng truy cập khi chọn một tuyến đường.
TRAFFIC_UNAWARE
: Không nên dùng vì lựa chọn tuyến đường và thời gian dựa trên mạng lưới đường bộ và điều kiện giao thông trung bình không phụ thuộc vào thời gian.TRAFFIC_AWARE
vàTRAFFIC_AWARE_OPTIMAL
: Được đề xuất cho những chuyến khởi hành sắp diễn ra vì những lựa chọn ưu tiên này có tính đến tình trạng giao thông thực tế. Lưu lượng truy cập trực tiếp trở nên quan trọng và phù hợp hơn khidepartureTime
càng gần với thời điểm hiện tại. Bạn đặt thời gian khởi hành càng xa trong tương lai, thì điều kiện giao thông trong quá khứ càng được cân nhắc nhiều hơn khi chọn tuyến đường.
Ví dụ: Cách chọn tính năng định tuyến dựa trên thông tin giao thông
Đoạn mã JSON sau đây minh hoạ cách đặt lựa chọn ưu tiên định tuyến TRAFFIC_AWARE_OPTIMAL
trong phần nội dung của thực thể thông báo yêu cầu.
{ "origin":{ "location":{ "latLng":{ "latitude":37.419734, "longitude":-122.0827784 } } }, "destination":{ "location":{ "latLng":{ "latitude":37.417670, "longitude":-122.079595 } } }, "travelMode":"DRIVE", "routingPreference":"TRAFFIC_AWARE_OPTIMAL" }
Định cấu hình lưu lượng truy cập trên đường nhiều đoạn
Routes API cho phép bạn yêu cầu thông tin về tình trạng giao thông dọc theo một đường nhiều đoạn có nhận biết lưu lượng truy cập. Hãy xem phần Yêu cầu đường nhiều đoạn để biết thêm thông tin.